boxl(boxlight)
上衣boxllong是什么牌子,棒球上衣
布施郎

急求vb双人对战五子棋源代码
Option Explicit '五子棋程序 人机对战版本'需要2个Label控件 2个CommandButton控件Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As LongPrivate Declare Function CreateRoundRectRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long'Dim PlayStep() As String '记录棋谱的数组'Dim Label2Cap As StringPrivate Const BoxL As Single = 50, BoxT As Single = 50, BoxW As Single = 25, BoxN As Integer = 18Dim Table() As Long '棋盘(0-BoxN,0-BoxN) 0-空 1-黑子 2-白子Dim PsCore() As Long'定义当前玩家桌面空格的分数Dim CsCore() As Long'定义当前电脑桌面空格的分数Dim pWin() As Boolean '定义玩家的获胜组合Dim cWin() As Boolean '定义电脑的获胜组合Dim pFlag() As Boolean'定义玩家的获胜组合标志Dim cFlag() As Boolean'定义电脑的获胜组合标志Dim ThePlayFlag As Boolean'定义游戏有效标志Private Sub Command1_Click()If Not ThePlayFlag Then Call InitPlayEnvironment: Exit SubIf MsgBox("本局还没有下完,是否重新开始?(Y/N)", vbYesNo) = vbNo Then Exit SubCall InitPlayEnvironmentEnd SubPrivate Sub Command2_Click()EndEnd SubPrivate Sub Form_Load()Dim i As Long, lw As Long, lh As Long'Label2Cap = "000 黑方行 00列 00"Me.Width = 10815: Me.Height = 8040' Me.Caption = "五子棋 - 人机对战": Me.Showlw = Me.Width \ Screen.TwipsPerPixelX: lh = Me.Height \ Screen.TwipsPerPixelYSetWindowRgn Me.hWnd, CreateRoundRectRgn(0, 0, lw, lh, 60, 60), TrueWith Label1.Alignment = vbCenter: .FontSize = 12: .FontBold = True.ForeColor = vbRed: .BackStyle = 0: .AutoSize = True: .Move 8910, 510End WithLabel2.AutoSize = True: Label2.WordWrap = TrueLabel2.BackStyle = 0: Label2.Move 8040, 1050, 2280Command1.Move 8025, 7035, 1020, 435: Command1.Caption = "再来一局"Command2.Move 9300, 7035, 1020, 435: Command2.Caption = "不玩了"Call DrawChessBoard: Me.FillStyle = 0: Call InitPlayEnvironmentEnd SubPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)EndEnd SubPrivate Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)Dim iRow As Long, iCol As Long, i As Long, k As Long, t As StringIf Not ThePlayFlag Then Exit SubIf Button = vbLeftButton Then'左键下棋iRow = -1: iCol = -1For i = 0 To BoxN '鼠标必须落在交叉点 半径10以内 若是则给出行列号If (Y + 10) > (BoxT + i * BoxW) And (Y - 10) <= (BoxT + i * BoxW) Then iRow = iIf (X + 10) > (BoxL + i * BoxW) And (X - 10) <= (BoxL + i * BoxW) Then iCol = iNextIf (iRow = -1) Or (iCol = -1) Then Beep: Exit SubIf Table(iCol, iRow) > 0 Then Exit SubTable(iCol, iRow) = 2: Label1.Caption = "下一步 黑方"Me.FillColor = vbWhite: Me.Circle (iCol * BoxW + BoxT, iRow * BoxW + BoxL), 8For i = 0 To UBound(cWin, 3)If cWin(iCol, iRow, i) = True Then cFlag(i) = FalseNextCall CheckWin: Call DianNao'检查当前玩家是否获胜 调用电脑算法End IfEnd SubPublic Sub InitPlayEnvironment()'*****************************************************************************' 模块名称: InitPlayEnvironment [初始化过程]'' 描述: 1. 设置背景音乐。 2. 设置游戏状态有效。' 3. 初始化游戏状态标签。 4. 直接指定电脑的第一步走法。' 5. 初始化基本得分桌面。 6. 电脑和玩家获胜标志初始化。' 7. 初始化所有获胜组合。 8. 重新设定玩家的获胜标志。'*****************************************************************************Dim i As Long, j As Long, m As Long, n As LongThePlayFlag = True: Label1.Caption = "下一步 白方": Label2.Caption = ""Me.FillColor = vbBlack: Me.FillStyle = 0: Me.AutoRedraw = TrueMe.Cls: Me.Circle (9 * BoxW + BoxL, 9 * BoxW + BoxT), 8ReDim Table(0 To BoxN, 0 To BoxN) As LongReDim pFlag(NumsWin(BoxN + 1) - 1) As BooleanReDim cFlag(UBound(pFlag)) As BooleanReDim PsCore(BoxN, BoxN) As Long, CsCore(BoxN, BoxN) As LongReDim pWin(BoxN, BoxN, UBound(pFlag)) As BooleanReDim cWin(BoxN, BoxN, UBound(pFlag)) As BooleanFor i = 0 To UBound(pFlag): pFlag(i) = True: cFlag(i) = True: NextTable(9, 9) = 1 '假定电脑先手 并下了(9, 9)位 将其值设为1'******** 初始化获胜组合 ****************************************For i = 0 To BoxN: For j = 0 To BoxN - 4For m = 0 To 4pWin(j + m, i, n) = True: cWin(j + m, i, n) = TrueNextn = n + 1Next: NextFor i = 0 To BoxN: For j = 0 To BoxN - 4For m = 0 To 4pWin(i, j + m, n) = True: cWin(i, j + m, n) = TrueNextn = n + 1Next: NextFor i = 0 To BoxN - 4: For j = 0 To BoxN - 4For m = 0 To 4pWin(j + m, i + m, n) = True: cWin(j + m, i + m, n) = TrueNextn = n + 1Next: NextFor i = 0 To BoxN - 4: For j = BoxN To 4 Step -1For m = 0 To 4pWin(j - m, i + m, n) = True: cWin(j - m, i + m, n) = TrueNextn = n + 1Next: Next'******** 初始化获胜组合结束 *************************************For i = 0 To UBound(pWin, 3) '由于电脑已下了(9, 9)位 所以需要重新设定玩家的获胜标志If pWin(9, 9, i) = True Then pFlag(i) = FalseNextEnd SubPublic Function DrawChessBoard() As Long'容器的(BoxL, BoxT)为左上角坐标画一个 BoxN*BoxN, 每格边长为 BoxW 象素的棋盘Dim i As Long, j As Long, cx As Long, cy As LongMe.ScaleMode = 3: Me.FillStyle = 1: Me.AutoRedraw = True: Me.ClsFor i = 0 To BoxN '画棋盘Me.Line (BoxL + i * BoxW, BoxT)-(BoxL + i * BoxW, BoxT + BoxN * BoxW)Me.Line (BoxL, BoxT + i * BoxW)-(BoxL + BoxN * BoxW, BoxT + i * BoxW)Me.CurrentX = BoxL + i * BoxW - IIf(i > 9, 6, 2)Me.CurrentY = BoxT - 20: Me.Print Format(i)Me.CurrentX = BoxL - IIf(i > 9, 23, 20)Me.CurrentY = BoxT + i * BoxW - 6: Me.Print Format(i)NextFor i = 3 To 16 Step 6: For j = 3 To 16 Step 6 '画小标志cx = BoxL + j * BoxW - 3: cy = BoxT + i * BoxW - 3Me.Line (cx, cy)-(cx + 6, cy + 6), , BNext: NextMe.AutoRedraw = False: Set Me.Picture = Me.ImageEnd FunctionPublic Sub CheckWin()'*****************************************************************************' 模块名称: CheckWin[获胜检查算法]'' 描述:1. 检查是否和棋。 2. 检查电脑是否获胜。3. 检查玩家是否获胜。'*****************************************************************************Dim i As Long, j As Long, k As Long, m As Long, n As LongDim cA As Long, pA As Long, cN As LongFor i = 0 To UBound(cFlag): cN = IIf(cFlag(i) = False, cN + 1, cN): NextIf cN = UBound(cFlag) - 1 Then '设定和棋规则Label1.Caption = "双方和棋!": ThePlayFlag = False: Exit SubEnd IfFor i = 0 To UBound(cFlag) '检查电脑是否获胜If cFlag(i) = True ThencA = 0: For j = 0 To BoxN: For k = 0 To BoxNIf Table(j, k) = 1 And cWin(j, k, i) = True Then cA = cA + 1Next: NextIf cA = 5 Then Label1.Caption = "电脑获胜!": ThePlayFlag = False: Exit SubEnd IfNextFor i = 0 To UBound(pFlag) '检查玩家是否获胜If pFlag(i) = True ThenpA = 0: For j = 0 To BoxN: For k = 0 To BoxNIf Table(j, k) = 2 And pWin(j, k, i) = True Then pA = pA + 1Next: NextIf pA = 5 Then Label1.Caption = "玩家获胜!": ThePlayFlag = False: Exit SubEnd IfNextEnd SubPublic Sub DianNao()'*****************************************************************************' 模块名称: DianNao[电脑算法]' 描述:1. 初始化赋值系统。2. 赋值加强算法。3. 计算电脑和玩家的最佳攻击位。'4. 比较电脑和玩家的最佳攻击位并决定电脑的最佳策略。5. 执行检查获胜函数。'*****************************************************************************Dim i As Long, j As Long, k As Long, m As Long, n As LongDim Dc As Long, cAb As Long, pAb As LongReDim PsCore(BoxN, BoxN) As Long, CsCore(BoxN, BoxN) As Long '初始化赋值数组'******** 电脑加强算法 ********For i = 0 To UBound(cFlag)If cFlag(i) = True ThencAb = 0For j = 0 To BoxN: For k = 0 To BoxNIf Table(j, k) = 1 And cWin(j, k, i) = True Then cAb = cAb + 1Next: NextSelect Case cAbCase 3For m = 0 To BoxN: For n = 0 To BoxNIf Table(m, n) = 0 And cWin(m, n, i) = True Then CsCore(m, n) = CsCore(m, n) + 5Next: NextCase 4For m = 0 To BoxN: For n = 0 To BoxNIf Table(m, n) = 0 And cWin(m, n, i) = True ThenTable(m, n) = 1: Label1.Caption = "下一步 白方"Me.FillColor = vbBlack: Me.Circle (m * BoxW + BoxL, n * BoxW + BoxT), 8For Dc = 0 To UBound(pWin, 3)If pWin(m, n, Dc) = True Then pFlag(Dc) = False: Call CheckWin: Exit SubNextEnd IfNext: NextEnd SelectEnd IfNextFor i = 0 To UBound(pFlag)If pFlag(i) = True ThenpAb = 0For j = 0 To BoxN: For k = 0 To BoxNIf Table(j, k) = 2 And pWin(j, k, i) = True Then pAb = pAb + 1Next: NextSelect Case pAbCase 3For m = 0 To BoxN: For n = 0 To BoxNIf Table(m, n) = 0 And pWin(m, n, i) = True Then PsCore(m, n) = PsCore(m, n) + 30Next: NextCase 4For m = 0 To BoxN: For n = 0 To BoxNIf Table(m, n) = 0 And pWin(m, n, i) = True ThenTable(m, n) = 1: Label1.Caption = "下一步 白方"Me.FillColor = vbBlack: Me.Circle (m * BoxW + BoxL, n * BoxW + BoxT), 8For Dc = 0 To UBound(pWin, 3)If pWin(m, n, Dc) = True Then pFlag(Dc) = False: Call CheckWin: Exit SubNextEnd IfNext: NextEnd SelectEnd IfNext'******** 电脑加强算法结束 ********'******** 赋值系统 ****************For i = 0 To UBound(cFlag)If cFlag(i) = True ThenFor j = 0 To BoxN: For k = 0 To BoxNIf (Table(j, k) = 0) And cWin(j, k, i) ThenFor m = 0 To BoxN: For n = 0 To BoxNIf (Table(m, n) = 1) And cWin(m, n, i) Then CsCore(j, k) = CsCore(j, k) + 1Next: NextEnd IfNext: NextEnd IfNextFor i = 0 To UBound(pFlag)If pFlag(i) = True ThenFor j = 0 To BoxN: For k = 0 To BoxNIf (Table(j, k) = 0) And pWin(j, k, i) ThenFor m = 0 To BoxN: For n = 0 To BoxNIf (Table(m, n) = 2) And pWin(m, n, i) Then PsCore(j, k) = PsCore(j, k) + 1Next: NextEnd IfNext: NextEnd IfNext'******** 赋值系统结束 ************'******** 分值比较算法 ************Dim a As Long, b As Long, c As Long, d As LongDim cS As Long, pS As LongFor i = 0 To BoxN: For j = 0 To BoxNIf CsCore(i, j) > cS Then cS = CsCore(i, j): a = i: b = jNext: NextFor i = 0 To BoxN: For j = 0 To BoxNIf PsCore(i, j) > pS Then pS = PsCore(i, j): c = i: d = jNext: NextIf cS > pS ThenTable(a, b) = 1: Label1.Caption = "下一步 白方"Me.FillColor = vbBlack: Me.Circle (a * BoxW + BoxL, b * BoxW + BoxT), 8For i = 0 To UBound(pWin, 3)If pWin(a, b, i) = True Then pFlag(i) = FalseNextElseTable(c, d) = 1: Label1.Caption = "下一步 白方"Me.FillColor = vbBlack: Me.Circle (c * BoxW + BoxL, d * BoxW + BoxL), 8For i = 0 To UBound(pWin, 3)If pWin(c, d, i) = True Then pFlag(i) = FalseNextEnd If'******** 分值比较算法结束 ********Call CheckWinEnd SubPublic Function NumsWin(ByVal n As Long) As Long'根据输入的棋盘布局 n*n 计算总共有多少种获胜组合'假定棋盘为 10 * 10 相应的棋盘数组就是 Table(9, 9)'水平方向 每一列获胜组合是6 共10列 6*10=60'垂直方向 每一行获胜组合是6 共10行 8*10=60'正对角线方向 6 + (5 + 4 + 3 + 2 + 1) * 2 = 36'反对角线方向 6 + (5 + 4 + 3 + 2 + 1) * 2 = 36'总的获胜组合数为 60 + 60 + 36 + 36 = 192Dim i As Long, t As LongFor i = n - 5 To 1 Step -1: t = t + i: NextNumsWin = 2 * (2 * t + n - 4) + 2 * n * (n - 4) End Function
Dim pWin() As Boolean '定义玩家的获胜组合 Dim cWin() As Boolean '定义电脑的获胜组合Dim pFlag() As Boolean '定义玩家的获胜组合标志Dim cFlag() As Boolean '定义电脑的获胜组合标志 Dim ThePlayFlag As Boolean '定义游戏有效标志
这里有一个人机版的,你看看(源码): http://www.ruiyuan-power.cn/sfw/VB_wzq.rarhttp://d.download.csdn.net/down/232645/leenly网络五子棋的源代码(称得上是精品):http://www.newasp.net/code/vb/20845.html
Dim pWin() As Boolean '定义玩家的获胜组合 Dim cWin() As Boolean '定义电脑的获胜组合Dim pFlag() As Boolean '定义玩家的获胜组合标志Dim cFlag() As Boolean '定义电脑的获胜组合标志 Dim ThePlayFlag As Boolean '定义游戏有效标志
这里有一个人机版的,你看看(源码): http://www.ruiyuan-power.cn/sfw/VB_wzq.rarhttp://d.download.csdn.net/down/232645/leenly网络五子棋的源代码(称得上是精品):http://www.newasp.net/code/vb/20845.html

自动独占键盘怎么退出
具体方法如下:1,打开Oracle VM VirtualBoxl软件。2,点击Oracle VM VirtualBoxl主界面的菜单栏上的“管理”,在弹出“管理“菜单上点击“全局设置“。3,点击VirtualBoxl设置对话框上"热键"标签,把“自动独占键盘”前的勾去了,再点击“保存”按钮就行了。当你的虚拟机窗口在最前,你的鼠标移动到虚拟机显示屏上的时候自动将键盘鼠标的输入都输入到虚拟机,就是你的鼠标移动到虚拟机窗口里就可以对虚拟机进行操作了。如果不开应该就是你把鼠标移动到虚拟机窗口后,还要点击一下才能对虚拟机进行操作。键盘是用于操作计算机设备运行的一种指令和数据输入装置,也指经过系统安排操作一台机器或设备的一组功能键(如打字机、电脑键盘)。键盘也是组成键盘乐器的一部分,也可以指使用键盘的乐器,如钢琴、数位钢琴或电子琴等,键盘有助于练习打字。键盘是最常用也是最主要的输入设备,通过键盘可以将英文字母、汉字、数字、标点符号等输入到计算机中,从而向计算机发出命令、输入数据等。还有一些带有各种快捷键的键盘。随着时间的推移,渐渐的市场上也出现独立的具有各种快捷功能的产品单独出售,并带有专用的驱动和设定软件,在兼容机上也能实现个性化的操作。

用4个方向的margin属性写出#boxl{margin:5px 10px 3px;}的代码
#boxl{margin:5px 10px 3px;} 等同于 #boxl{margin:5px 10px 3px 10px;} #box{margin-top:5px;margin-left:10px;margin-right:10px;margin-bottom:3px; }
#boxl{margin-top:5px;magrin-right:10px; margin-bottom:3px; margin-left:0px; }
#boxl{margin-top:5px;magrin-right:10px; margin-bottom:3px; margin-left:0px; }

如何更改 VirtualBox默认的自动独占键盘
打开Oracle VM VirtualBoxl软件点击Oracle VM VirtualBoxl主界面的菜单栏上的“管理”,在弹出“管理“菜单上点击“全局设置“点击VirtualBoxl设置对话框上"热键"标签,把“自动独占键盘”前的勾去了,再点击“保存”按钮就行了

