当前位置:编程学习 > VB >>

用VB设计聚焦框程序

答案:
用VB设计聚焦框程序
作者:季昭君
什么是聚焦框?在Windows中是这样解释的:当某个按钮被按下或某个控件正在使用时,由一个长方形的虚线框聚焦在此按钮或控件上来提示用户它正起作用。但是并非所有的控件在任何时候都能得到焦点(即得到聚焦框),有时我们在日常的编程中也许会用到它,用来提示用户一些必要的信息。这时你可以这样做:
  说明: 在以下程序中可以使Picture控件得到聚焦框,且程序调用API函数来完成。
  首先,在FORM1上新建一个Picture1和一个Command1,然后输入以下代码:

  Private Declare Function DrawFocusRect Lib "user32" _
    (ByVal hdc As Long, lpRect As RECT) As Long
  Private Type RECT
    X1 As Long
    Y1 As Long
    X2 As Long
    Y2 As Long
  End Type
  Dim lpRect As RECT '在通用中声明调用API函数
  Private Sub Form_Load()
    Form1.WindowState = 2 '最大化窗口
    Picture1.Picture = LoadPicture("C:\BMP\1.BMP") '请读者根据自己选择图片
    Command1.Caption ="设置聚焦框"
  End Sub
  Private Sub Form_Activate()
    Picture1.Move (Form1.ScaleWidth - Picture1.ScaleWidth) / 2, _
        (Form1.ScaleHeight - Picture1.ScaleHeight) /2 '使Picture1居中显示
  End Sub
  Private Sub Command1_Click()
    Dim DENG As Long
    lpRect.X1 = Picture1.Left - 10
    lpRect.Y1 = Picture1.Top - 10
    lpRect.X2 = lpRect.X1 + Picture1.Width + 20
    lpRect.Y2 = lpRect.Y1 + Picture1.Height + 20
    DENG = DrawFocusRect(hdc, lpRect)
  End Sub

  OK,大功告成,按F5运行,通过单击按钮Command1就可以实现Picture1控件被聚焦! 当然你也可以作适当调整,使它符合你个人的需要。

上一个:操作VB中的无边框窗体
下一个:VB中实现带预览的对话框

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,