求教这样的按扭怎么做?

huhu0013 2007-06-24 12:05:07

我说的按扭,是像IE的那种按扭,当鼠标移上去时,它呈现突起状态,

左边和上边是两条细的白线,右边和下边是两条细的黑线,

对比我们在VB中使用的按扭,会发现我们的按扭很难看,它的右边和下边

是两条粗粗的黑线,按扭的边框看上去太粗太浓了。

所以我想把按扭做得像上面我说的IE那种样子,请问它是怎么做的?
...全文
222 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
tsorgy 2007-06-24
  • 打赏
  • 举报
回复
可以应用到以下控件或对象中

ProgressBar控件
Slider控件
StatusBar控件
TabStrip控件
ToolbarControl
Animation控件
UpDown控件
DBCombo控件
DBList控件
SSTab控件
PicturtClip控件
RichTextBox控件
PropertyPage对象
UserControl对象
UserDocument对象
CheckBox控件
ComboBox控件
CommandButton控件
DirListBox控件
DriveListBox控件
FileListBox控件
Form对象
Forms集合
Frame控件
HscrollBar
VScrollBar控件
ListBox控件
MDIForm对象
OptionButton控件
PictureBox控件
TextBox控件
OLEContainer控件
tsorgy 2007-06-24
  • 打赏
  • 举报
回复
创建一个UserControl
在代码窗口加入API声明
Private Declare Function SetCapture Lib "user32" (ByVal hWnd As Long) As Long
Private Declare Function ReleaseCapture Lib "user32" () As Long

然后在其MouseMove中加入以下代码

Dim bIn As Boolean
bIn = (0 <= X) And (X <= UserControl.Width) And (0 <= Y) And (Y <= UserControl.Height)
If bIn Then
'
'在这里加入MouseIn的代码
'就是鼠标移入控件时需要处理的代码,比如增加突出效果(可以用Line方法画线)
'
SetCapture UserControl.hWnd
Else
'
'在这里加入MouseOut的代码
'就是鼠标移出控件时需要处理的代码,用背景色重画边框或Cls即可
'
ReleaseCapture
End If

MouseDown和MouseUp代码就不需要再写出来了吧~~~~~~
huhu0013 2007-06-24
  • 打赏
  • 举报
回复
可是我没有表达好,我强调的不是使按扭在鼠标移动上去时有突起的效果,

我要的是按扭的边框不要太粗太浓,像VB里面现成的按扭控件的边框就太粗

太浓了,很难看,我想改成边框细细的样子。

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧