VB界面美化
VB编程实现图像的漂亮效果

本⽂讲解了如何通过VB编程实现图像的漂亮效果。
参数表----------------------------------------------------- Angle 光照倾⾓,取值0到90之间,以⾓度为单位 WidthOfArea 光照区宽度,取值⼤于1的整数,以像素为单位 Speed 光照区运动速度,取值⼤于1的整数 EnhanceRatio 光照强度参数,取值⼤于1的整数 ----------------------------------------------------- 好,原理就这么多,现在我们开始动⼿实现吧!打开VB6.0,选择新建标准EXE⼯程,在主窗⼝form1中绘制下表中所列控件并设置窗体和各控件的属性。
控件属性设置 Form1 Name Form1 ScaleMode 3-pixel PictureBox Name PicDest ScaleMode 3-pixel Picture 背景图 PictureBox Name PicSource ScaleMode 3-pixel Picture 主体图 Label Name LblA Caption ⾓度 Textbox Name TxtA Text 30 Label Name LblW Caption 宽度 Textbox Name TxtW Text 15 Label Name LblE Caption 强度 Textbox Name TxtE Text 15 Label Name LblS Caption 速度 Textbox Name TxtS Text 1 CommandButton Name Cmd1 Caption 开始特效 ⽣成最后的窗体。
VB编程之路-如何让界面美化

减小字体 增大字体
如果大家用过《Windows优化大师》,肯定会被它的界面所倾倒,其实利用ActiveSkin 就可以办到,甚至更爽,但是如果要做的共享软件只是一个文件,在加上几个OCX累赘,似乎很是不爽,看看VB是怎么利用别的东东来实现的吧。
首先新建一个EXE工程,再在窗体上拖几个Label控件,看看Label 的强大功能吧,原理就是利用Label来模拟一个按钮,但是首先要将Label控件的属性要调一下,
LblBtn(Index).BackColor = LBL_WHEN_MOUSE_DOWN ’临时改变LblBtn背景颜色
End Sub
Private Sub LblBtn_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single) ’鼠标在LblBtn上面移动时触发该事件
Appearance 0
BorderStyle 1
MutilLine True
千万不要设置ScrollBars属性,否则会影响效果
在Form的Load事件中初始化TextBox
Dim bkColor As Long
Private Sub Form_Load()
bkColor=RGB(235,235,235)
Else
LblBtn(Index).BackColor = LBL_WHEN_MOUSE_MOVE ’将背景设为鼠标移动的背景
End If
Next Count
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
利用VB做精美桌面

【VB】利用VB做美化界面如果大家用过《Windows优化大师》,肯定会被它的界面所倾倒,其实利用ActiveSkin 就可以办到,甚至更好,但是如果要做的共享软件只是一个文件,在加上几个OCX累赘,似乎很是不好,看看VB是怎么利用别的东西来实现的吧。
首先新建一个EXE工程,再在窗体上拖几个Label控件,看看Label 的强大功能吧,原理就是利用Label来模拟一个按钮,但是首先要将Label控件的属性要调一下,Name: LblBtn,BorderStyle: 1,Appearance: 0,Alignment: 2,这样一个按钮的雏形就已经出来了,如果工程量很大,可以将多个Label控件的Name 属性设为一样的,对于按钮的识别就要靠识别Index属性了,为了方便起见,在进入到代码编辑窗口,输入以下代码:Private Const LBL_BACK_COLOR = &HE0E0E0 ’正常时Label控件的背景色Private Const LBL_WHEN_MOUSE_MOVE = &HC0C0C0 ’鼠标移动时Label的背景色Private Const LBL_WHEN_MOUSE_DOWN = &H808080 ’鼠标按下时Label的背景色再在Form的Load事件中输入以下内容Private Sub Form_Load()Dim Count As IntegerFor Count = 0 To 3 ’请将此出的3换成你的LblBtn数量的个数-1LblBtn(Count).BackColor=LBL_BACK_COLOR ’初始化LblBtn的背景Next CountEnd Sub然后再在LblBtn的MouseMove和MouseDown事件中来搞定剩余部分:Private Sub LblBtn_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)’当鼠标按在LblBtn上时LblBtn(Index).BackColor = LBL_WHEN_MOUSE_DOWN ’临时改变LblBtn背景颜色End SubPrivate Sub LblBtn_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)’鼠标在LblBtn上面移动时触发该事件Dim Count As IntegerDoEvents ’暂时将系统控制权教给系统If Button Then Exit Sub ’如果按钮被按下就退出该过程For Count = 0 To 3If Count <> Index Then ’如果按下的不是其它按钮LblBtn(Index).BackColor = LBL_BACK_COLOR ’将背景设为正常ElseLblBtn(Index).BackColor = LBL_WHEN_MOUSE_MOVE ’将背景设为鼠标移动的背景End IfNext CountEnd SubPrivate Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single,Y As Single)Dim Count As IntegerDoEventsFor Count=0 To 3LblBtn(Count).BackColor=LBL_BACKCOLOR ’恢复背景Next CountEnd本来利用Windows的消息系统来完成这一“艰巨”的任务最简单,可问题就来了,Label 控件没有窗口句柄怎么办?可是此问题与题无关,写了会有骗稿费之:)OK,Label控件就讲到这里,在来说说TextBox控件,各位看关恐怕看惯了白颜色的背景,那么就换换颜色以养养俺们那和绵羊一样的眼睛(为什么说绵羊?俺也不知道),可是VB提供的RGB函数弄出来的颜色不是怎么好看,这里俺来教大家一个小Tip,RGB函数的Red,Green,Blue这三个参数若一样,则产生的颜色是灰度,当然越接近白颜色越好,但也不能让各位看不出来,俺建议TextBox的背景为RGB(235,235,235),各位还是实战一下,将一个TextBox拖到窗体上,属性设置如下Appearance 0BorderStyle 1MutilLine True千万不要设置ScrollBars属性,否则会影响效果在Form的Load事件中初始化TextBoxDim bkColor As LongPrivate Sub Form_Load()bkColor=RGB(235,235,235)Text1.BackColor=bkColorEnd Sub在Form和Text1的MouseMove事件中:Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single,Y As Single)Text1.BorderStyle = 0End SubPrivate Sub Text1_MouseMove(Button As Integer, Shift As Integer, X As Single,Y As Single)DoEventsText1.BorderStyle = 1End Sub在按下F5试试是不是很Cool?可能各位看关玩过石器时代,一定会对里面的TextBox的效果感到很爽,VB还不是可以做到,有焦点的控件可以使用SetFocus方法来为其设置焦点,可是一个窗体上如果控件太多了,一个一个的用SetFocus是不是太傻了?这一节的主角就是--------API函数,首先声明:Private Type POINTAPIx As Longy As LongEnd TypePrivate Declare Function GetCursorPos Lib "user32" Alias "GetCursorPos" (lpPoint As POINTAPI) As LongPrivate Declare Function WindowFromPoint Lib "user32" Alias "WindowFromPoint" (ByVal xPoint As Long, ByVal yPoint As Long) As LongPrivate Declare Function SetFocus Lib "user32" Alias "SetFocus" (ByVal hwnd As Long) As Long但是这里的SetFocus会和控件的SetFocus会搞混淆,改改吧,Private Declare Function nSetFocus Lib "user32" Alias "SetFocus" (ByVal hwnd As Long) As Long只要Alias指向的接口是对的前面的函数名称简直就是摆设,在建立一个过程:Public Function sSetFocus() As LongDim CPos As POINTAPI,Successfull As Boolean,hWnd As LongDoEventsSuccessfull =GetCursorPos(CPos)If Not Successfull Then Exit Sub ’如果未成功则退出该过程hWnd=WindowFromPoint(CPos.x,CPos.y)sSetFocus=nSetFocus(hWnd)End Sub在窗体上放一个Timer控件,Interval 属性设为100,就是0.1秒,在Timer1控件的Timer事件中填入sSetFocus,在运行一下看看,效果怎么样?可是有的先生小姐要问了,TextBox难道就不能用ScrollBar吗?非也非也,选工程->部件->Microsoft Windows Common Controls-2 6.0 (SP3)就是你的答案,至于卷动TextBox就去研究SendMessage函数吧,否则又有骗稿费之嫌,如果想作绿色软件,不想用控件,可以用俺前面讲到的Label控件,利用字体 Webdings 来模拟ScrollBar,需要注意的是,如果模拟ScrollBar,上下左右箭头分别是5,6,3,4,别忘了把字体设为Webdings再来讲讲窗体的美化,其实将BorderStyle属性设为0就是很好的2D美化;)可是,这样一来,问题又来了,怎么办?凡事都要请API来帮忙,这里需要两个API,一下是该API的声明:Public Declare Function ReleaseCapture Lib "user32" Alias "ReleaseCapture" ()As Long 注释:这个API是用来解下鼠标的追踪器,关于他的过多用法以及详细介绍可以写信向俺咨询,还有Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long’这个该不要俺多介绍了吧Public Const HTCAPTION = 2 ’代表窗体的标题区Public Const WM_NCLBUTTONDOWN = &HA1 ’表示非工作区左键按下原理很简单,卸下鼠标追踪器后向Form发送一个移动窗体的消息,其实做到这一点的方法很多,但俺个人认为这一种最简单,添加一个过程:Public Sub MoveForm(hWnd As Long)DoEventsReleaseCaptureSendMessage hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&End Sub在Form的MouseMove事件中:Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single,Y As Single)If Button=vbLeftButton Then MoveForm hWnd’如果按下鼠标左键就移动窗体End Sub台下的这位小姐又纳闷了,可是光秃秃的窗体没有了标题栏也不好看,俺要向这为小姐推荐俺的东东-ActiveX控件,ToolSign,需要的人可以写信给俺联系,该控件需要在代码编辑区域内添加一下代码:’一下声明是用在ToolSign的 AutoQuit属性的Public Const EXIT_FORCE = 2 ’注意,在VB中运行的时候如果选用此退出方式,VB也会退出Public Const EXIT_MESSAGE = 1 ’由操作系统发送关闭消息Public Const EXIT_CUSTOM = Not (EXIT_FORCE Or EXIT_MESSAGE)’自定义将其注册后在部件栏中把e-Dogkid Studio Tools Sign打钩,添加到工具箱中,双击加入到窗体中,在Form的Load事件中添加一下初始化代码:Private Sub Form_Load()With Sign1.AutoQuit = EXIT_CUSTOM.ParentsHWND = hWnd ’填了此属性可以直接用ToolSign来移动窗体而不需要前面的代码End WithEnd SubSign1的Click事件Private Sub Sign1_Click()End ’关闭程序End Sub在Form的Resize事件中添加一下代码:Private Sub Form_Resize()Sign1.Width = WidthEnd Sub如果想让窗体可以改变大小,可以修改一下属性Caption ""BorderStyle 2或5ControlBox False不知道各位看关见过爆炸试的窗体没有?,没有见过可以从俺要另外一个俺自己的ActiveX DLL,我的那个东东其实是给我的Software作运行库的,各位若不嫌弃,可以用用,注册后在工程->引用->e-Dogkid Runtime Library然后在窗体Load事件中输入:Private Sub Form_Load()Dim System As e_Dogkid_Runtime_Library.SystemSet System = New e_Dogkid_Runtime_Library.SystemShowSystem.BoomIt hDC, 60, Width, Height, Left, TopSet System = NothingEnd Sub。
vb背景色设置的代码

vb背景色设置的代码VB背景色设置的代码VB是一种广泛使用的编程语言,它可以用于开发各种类型的应用程序。
其中,VB的背景色设置是常用的功能之一。
以下是VB背景色设置的代码,帮助您轻松设置自己的应用程序。
一、设置窗体背景色在VB中,您可以使用以下代码设置窗体的背景色:Private Sub Form_Load()Me.BackColor = RGB(192, 192, 192)End Sub代码中,RGB函数用于设置RGB颜色值的背景色。
如果需要设置其他颜色,只需更改RGB函数的参数即可。
二、设置控件背景色您可以使用以下代码设置控件的背景色:Private Sub Command1_Click()Command1.BackColor = RGB(255, 0, 0)End Sub在上面的代码中,当Command1按钮被单击时,将其背景色设置为红色。
同样,您可以使用相同的方法来设置其他控件的背景色(如标签、文本框和列表框等)。
三、设置多个控件背景色如果您要设置多个控件的背景色,可以使用以下代码:Private Sub Form_Load()Dim ctrl As ControlFor Each ctrl In ControlsIf TypeOf ctrl Is CommandButton Thenctrl.BackColor = RGB(255, 0, 0)End IfNextEnd Sub在上面的代码中,将所有的命令按钮背景设置为红色。
通过使用循环语句,可以轻松地设置多个控件的背景色。
总结VB背景色设置的代码非常简单,只需使用RGB函数即可设置控件和窗体的背景色。
通过这些代码,您可以将自己的应用程序与众不同,并满足用户的需求。
VB:五彩缤纷的清屏效果

VB:五彩缤纷的清屏效果在一些软件演示中,这一屏内容到下一屏内容间往往以一些有趣的清屏图案来相互切换,有的像演出舞台上的开幕、闭幕,有的像百叶窗,也有一些圆形、菱形等形态各异的清屏图案。
VB作为一门优秀的WINDOWS下的开发语言,其图形功能也很强。
我们完全可以用其提供的画线语句作出上述的清屏图案,下面的程序给出了常见的清屏图案程序:Sub FilSCrO'设置背景色Me.BackColor=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))End SubSub ClrScrl()'从左右两边到中间清屏Dim i As Integer:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256)) For i=0 To ScaleWidth/2Line(i,0)-(i,ScaleHeight),colorLine(ScaleWidth-i,0)-(ScaleWidth-i,ScaleHeight),colorNext iEnd SubSub ClrSer20'从中间到左右两边清屏Dim i As Integer:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256)) for i=ScaleWidth/2 To 0 Step -1Line(i,0)-(i,ScaleHeight-1),colorLine(ScaleWidth-i,0)-(ScaleWidth-i,ScaleHeight),colorNext iEnd SubSub ClrScr30'从上(顶)下(低)到中间清屏Dim i As Integer:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256)) For i=0 To ScaleHeight/2Line(0,i)-(ScaleWidth,i),colorLine(0,ScaleHeight-i)-(ScaleWidth,ScaleHeight-i),colornext iEnd SubSub ClrScr40'从中间到上(顶)下(底)清屏Dim i As Integer:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))For i=ScaleHeight/2 To 0 Step -1Line(0,i)_(ScaleWidth,i),colorLine(0,ScaleHeight-i)-(ScaleWidth,ScaleHeight-i),colorNext iEnd SubSub ClrScr50'菱形清屏,从四角向中心Dim i,j As Integer:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256)) For i=0 To ScaleWidth Sep 200For j=0 To ScaleHeight Step200*ScaleHeight/ScaleWidthLine(i,0)-(0,j),colorLine(ScaleWidth-i,ScaleHeight)-(ScaleWidth,ScaleHeight-j),colorLine(0,ScaleHeight-j)-(i,ScaleHeight),colorLine(ScaleWidth-i,0)-(ScaleWidth,ScaleHeight-j),colorNext jNext iEnd SubSub ClrScr60'圆形清屏,由大至小从外围向中心Dim i As Integer:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256)) For i=ScaleWidth To 0 Step-3Circle(ScaleWidth/2,ScaleHeight/2,i/2,colorNext iEnd SubSub ClrScr70'圆形清屏,由小至大从中心向外围Dim i As Integer:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256)) For i=0 To ScaleHeight Step 3Circle(ScaleWidth/2,ScaleHeight/2),i/2,colorNext iEnd Sub‘以上程序作为定义的子函数,置于General间Sub Form_Activate()FillSCr;ClrScr1;ClrScr2;ClrScr3;ClrScr4;ClrScr5;ClrScr7;ClrScr6End SubPrivate Sub Form_Click()EndEnd Sub注:该程序在VB3.0、VB4.0、VB5.0下均通过,程序一开始运行即先后演示从左右到中间,从中间到左右,从上下到中间,从中间到上下,从四角向中心(菱形),从中心向外围(圆形),从外围向中心(圆形)等清屏图案。
vb界面美化

2010-11-02 22:45【转】vb界面美化vb界面如何美化一、网上搜索VB皮肤控件,一般为了更加美化都是做异性窗体,用图片做背景,然后去掉窗体边框,设置窗体颜色为透明,这个在这里就不详细说,还要加上拖动无边框窗体的代码,这样就可以了,至于其他按钮也可以用图片代替下面这个图片是我做的仿酷狗播放器,全是由图片构成的二、利用VB做美化界面如果大家用过《Windows优化大师》,肯定会被它的界面所倾倒,其实利用ActiveSkin 就可以办到,甚至更好,但是如果要做的共享软件只是一个文件,在加上几个OCX累赘,似乎很是不好,看看VB是怎么利用别的东西来实现的吧。
首先新建一个EXE工程,再在窗体上拖几个Label控件,看看Label 的强大功能吧,原理就是利用Label来模拟一个按钮,但是首先要将Label控件的属性要调一下,Name: LblBtn,BorderStyle: 1,Appearance: 0,Alignment: 2,这样一个按钮的雏形就已经出来了,如果工程量很大,可以将多个Label 控件的Name属性设为一样的,对于按钮的识别就要靠识别Index属性了,为了方便起见,在进入到代码编辑窗口,输入以下代码:Private Const LBL_BACK_COLOR =&HE0E0E0 ’正常时Label控件的背景色Private Const LBL_WHEN_MOUSE_MOVE =&HC0C0C0 ’鼠标移动时Label的背景色Private Const LBL_WHEN_MOUSE_DOWN =&H808080 ’鼠标按下时Label的背景色再在Form的Load事件中输入以下内容Private Sub Form_Load()Dim Count As IntegerFor Count =0 To 3 ’请将此出的3换成你的LblBtn数量的个数-1 LblBtn(Count).BackColor=LBL_BACK_COLOR ’初始化LblBtn的背景Next CountEnd Sub然后再在LblBtn的MouseMove和MouseDown事件中来搞定剩余部分:Private Sub LblBtn_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)’当鼠标按在LblBtn上时LblBtn(Index).BackColor =LBL_WHEN_MOUSE_DOWN ’临时改变LblBtn背景颜色End SubPrivate Sub LblBtn_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)’鼠标在LblBtn上面移动时触发该事件Dim Count As IntegerDoEvents ’暂时将系统控制权教给系统If Button Then Exit Sub ’如果按钮被按下就退出该过程For Count = 0 To 3If Count <> Index Then ’如果按下的不是其它按钮LblBtn(Index).BackColor =LBL_BACK_COLOR ’将背景设为正常ElseLblBtn(Index).BackColor =LBL_WHEN_MOUSE_MOVE ’将背景设为鼠标移动的背景End IfNext CountEnd SubPrivate Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)Dim Count As IntegerDoEventsFor Count=0 To 3LblBtn(Count).BackColor=LBL_BACKCOLOR ’恢复背景Next CountEnd本来利用Windows的消息系统来完成这一“艰巨”的任务最简单,可问题就来了,Label控件没有窗口句柄怎么办?可是此问题与题无关,写了会有骗稿费之:)OK,Label控件就讲到这里,在来说说TextBox控件,各位看关恐怕看惯了白颜色的背景,那么就换换颜色以养养俺们那和绵羊一样的眼睛(为什么说绵羊?俺也不知道),可是VB提供的RGB函数弄出来的颜色不是怎么好看,这里俺来教大家一个小Tip,RGB函数的Red,Green,Blue这三个参数若一样,则产生的颜色是灰度,当然越接近白颜色越好,但也不能让各位看不出来,俺建议TextBox的背景为RGB(235,235,235),各位还是实战一下,将一个TextBox拖到窗体上,属性设置如下Appearance 0BorderStyle 1MutilLine True千万不要设置ScrollBars属性,否则会影响效果在Form的Load事件中初始化TextBoxDim bkColor As LongPrivate Sub Form_Load()bkColor=RGB(235,235,235)Text1.BackColor=bkColorEnd Sub在Form和Text1的MouseMove事件中:Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)Text1.BorderStyle = 0End SubPrivate Sub Text1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)DoEventsText1.BorderStyle = 1End Sub在按下F5试试是不是很Cool?可能各位看关玩过石器时代,一定会对里面的TextBox的效果感到很爽,VB还不是可以做到,有焦点的控件可以使用SetFocus方法来为其设置焦点,可是一个窗体上如果控件太多了,一个一个的用SetFocus是不是太傻了?这一节的主角就是--------API函数,首先声明:Private Type POINTAPIx As Longy As LongEnd TypePrivate Declare Function GetCursorPos Lib "user32" Alias "GetCursorPos" (lpPoint As POINTAPI) As LongPrivate Declare Function WindowFromPoint Lib "user32" Alias "WindowFromPoint" (ByVal xPoint As Long, ByVal yPoint As Long) As Long Private Declare Function SetFocus Lib "user32" Alias "SetFocus" (ByValhwnd As Long) As Long但是这里的SetFocus会和控件的SetFocus会搞混淆,改改吧,Private Declare Function nSetFocus Lib "user32" Alias "SetFocus" (ByVal hwnd As Long) As Long只要Alias指向的接口是对的前面的函数名称简直就是摆设,在建立一个过程:Public Function sSetFocus() As LongDim CPos As POINTAPI,Successfull As Boolean,hWnd As LongDoEventsSuccessfull =GetCursorPos(CPos)If Not Successfull Then Exit Sub ’如果未成功则退出该过程hWnd=WindowFromPoint(CPos.x,CPos.y)sSetFocus=nSetFocus(hWnd)End Sub在窗体上放一个Timer控件,Interval 属性设为100,就是0.1秒,在Timer1控件的Timer事件中填入sSetFocus,在运行一下看看,效果怎么样?可是有的先生小姐要问了,TextBox难道就不能用ScrollBar吗?非也非也,选工程->部件->Microsoft Windows Common Controls-2 6.0 (SP3)就是你的答案,至于卷动TextBox就去研究SendMessage函数吧,否则又有骗稿费之嫌,如果想作绿色软件,不想用控件,可以用俺前面讲到的Label控件,利用字体 Webdings 来模拟ScrollBar,需要注意的是,如果模拟ScrollBar,上下左右箭头分别是5,6,3,4,别忘了把字体设为Webdings再来讲讲窗体的美化,其实将BorderStyle属性设为0就是很好的2D美化;)可是,这样一来,问题又来了,怎么办?凡事都要请API来帮忙,这里需要两个API,一下是该API的声明:Public Declare Function ReleaseCapture Lib "user32" Alias "ReleaseCapture" () As Long 注释:这个API是用来解下鼠标的追踪器,关于他的过多用法以及详细介绍可以写信向俺咨询,还有Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any)As Long’这个该不要俺多介绍了吧Public Const HTCAPTION = 2 ’代表窗体的标题区Public Const WM_NCLBUTTONDOWN =&HA1 ’表示非工作区左键按下原理很简单,卸下鼠标追踪器后向Form发送一个移动窗体的消息,其实做到这一点的方法很多,但俺个人认为这一种最简单,添加一个过程:Public Sub MoveForm(hWnd As Long)DoEventsReleaseCaptureSendMessage hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&End Sub在Form的MouseMove事件中:Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)If Button=vbLeftButton Then MoveForm hWnd’如果按下鼠标左键就移动窗体End Sub台下的这位小姐又纳闷了,可是光秃秃的窗体没有了标题栏也不好看,俺要向这为小姐推荐俺的东东-ActiveX控件,ToolSign,需要的人可以写信给俺联系,该控件需要在代码编辑区域内添加一下代码:’一下声明是用在ToolSign的 AutoQuit属性的Public Const EXIT_FORCE = 2 ’注意,在VB中运行的时候如果选用此退出方式,VB也会退出Public Const EXIT_MESSAGE = 1 ’由操作系统发送关闭消息Public Const EXIT_CUSTOM = Not (EXIT_FORCE Or EXIT_MESSAGE)’自定义将其注册后在部件栏中把e-Dogkid Studio Tools Sign打钩,添加到工具箱中,双击加入到窗体中,在Form的Load事件中添加一下初始化代码:Private Sub Form_Load()With Sign1.AutoQuit = EXIT_CUSTOM.ParentsHWND =hWnd ’填了此属性可以直接用ToolSign来移动窗体而不需要前面的代码End WithEnd SubSign1的Click事件Private Sub Sign1_Click()End ’关闭程序End Sub在Form的Resize事件中添加一下代码:Private Sub Form_Resize()Sign1.Width = WidthEnd Sub如果想让窗体可以改变大小,可以修改一下属性Caption ""BorderStyle 2或5ControlBox False不知道各位看关见过爆炸试的窗体没有?,没有见过可以从俺要另外一个俺自己的ActiveX DLL,我的那个东东其实是给我的Software作运行库的,各位若不嫌弃,可以用用,注册后在工程->引用->e-Dogkid Runtime Library 然后在窗体Load事件中输入:Private Sub Form_Load()Dim System As e_Dogkid_Runtime_Library.SystemSet System = New e_Dogkid_Runtime_Library.SystemShowSystem.BoomIt hDC, 60, Width, Height, Left, TopSet System = NothingEnd Sub三、能够美化VB6软件界面的软件/s?wd=actskin4下载这个SDK,里面有个控件很不错,三行代码改外观:/u/20090303/02/fb11597e-66af-4f65-adb1-91014add6 89a.html这个SDK带了皮肤编辑器,默认有XP,OFFICE2007,VISTA等几种皮肤,当然也可以自己编辑个性皮可以用皮肤软件,像VBcrazy说的SkinSharp。
VB中界面的设计原则及美化
在开发应用程序中 ,为了使其更具吸引 力 ,有个良好的界面是非常重要的 。界面的设 计和美化不仅影响到它本身外观的可观赏性 , 而且对应用程序的可操作性也有不可忽视的 作用 。一个有着良好界面的应用程序往往会 给用户一个好印象 ,使用户易于接受并积极使 用 。良好的界面并不是只有专业的美术人员 才能设计出来 ,在 VB 中通过在窗体上拖曳控 件的方式为创建用户界面提供了非常简便的 方法 ,因此了解用户界面的设计原则及美化的 方法 ,是每个程序设计人员都要做的事情 。
For X = 1 To 80 hBrush = CreateSolidBrush ( RGB ( 0 , 0 , Col2 or) ) RetVal = FillRect (Me. hDC ,FillArea ,hBrush) RetVal = DeleteObject (hBrush) Color = Color - 4 If Color < 0 Then Color = 0 FillArea. top = FillArea. bottom FillArea. bottom = FillArea. bottom + StepSize Next Me. ScaleMode = OldMode End Sub 按 F5 运行 ,就会出现一个以从上至下 、由 浅至深的渐变蓝色为背景的窗口 。对上述代 码稍加改动 ,便可制作出各种颜色和水平方向 的渐变背景 。
VB配色方案
VB配色方案Visual Basic (VB)是一种广泛应用于软件开发的编程语言,其配色方案在提升用户界面的美观度和可读性方面起着重要的作用。
本文将介绍几种常用的VB配色方案,以帮助开发者为自己的应用程序选择合适的配色方案。
1. 默认配色方案默认的VB配色方案通常以灰色和白色为主色调,适用于一般性的应用程序。
这种配色方案简洁大方,对用户来说很容易适应。
主要采用高对比度的颜色组合,确保文字和图标能够清晰地显示在背景上。
2. 鲜艳色彩方案鲜艳色彩方案适用于应用程序需要吸引用户注意力的情况。
通过使用明亮的颜色,配合适当的阴影和渐变效果,可以使界面更加生动活泼。
但需要注意的是,颜色的使用要遵循色彩搭配原则,避免使用过于刺眼或不协调的颜色。
3. 暗黑色主题暗黑色主题在近年来越来越受欢迎,并广泛应用于各种应用程序中。
这种主题以深色背景为基础,通过使用亮色的文字和图标,营造出科技感或专业感。
不仅能够提供更好的视觉效果,还能减轻眼睛的疲劳。
暗黑色主题适用于多媒体、游戏、音乐等特定类型的应用程序。
4. 自定义配色方案除了上述提到的配色方案,开发者还可以根据自己的需求进行自定义配置。
可以根据应用程序的功能和定位来选择主色调和辅助色彩,以达到与品牌风格一致或迎合目标用户群体的效果。
自定义配色方案需要考虑色彩的搭配性、对比度、可读性和视觉冲击力等因素。
总结:在VB应用程序的开发过程中,选择合适的配色方案是提升用户体验的关键之一。
不同的配色方案适用于不同类型和定位的应用程序,开发者应根据具体情况进行选择。
无论是默认配色方案、鲜艳色彩方案、暗黑色主题,还是自定义配色方案,都需要注意颜色的搭配、对比度和可读性,以确保界面的美观和易用性。
通过合理的配色方案,能够为用户带来更好的视觉效果和使用体验。
几款VB美化代码
几款VB美化代码窗体半透明效果Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowL ongA" (ByVal hwnd As Long, ByVal nIndex As Long) As LongPrivate Declare Function SetWindowLong Lib "user32" Alias "SetWindowL ongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Lo ng) As LongPrivate Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As LongPrivate Const WS_EX_LAYERED = &H80000Private Const GWL_EXSTYLE = (-20)Private Const LWA_ALPHA = &H2Private Const LWA_COLORKEY = &H1Private Sub Command1_Click()Dim rtn As Longrtn = GetWindowLong(hwnd, GWL_EXSTYLE)rtn = rtn Or WS_EX_LAYEREDSetWindowLong hwnd, GWL_EXSTYLE, rtnSetLayeredWindowAttributes hwnd, 0, 200, LWA_ALPHAEnd Sub二。
用VB尝试新的界面风格
随着微软Windows产品风格的不断演进,各应用软件厂商也在跟进,但经常是主流的开发工具跟不上节奏,这时往往就需要用一些辅助的工具来编制那精美的界面了。
本文只是略谈一点这方面的感受,举两个小工具的例子。
用ActiveBar制作Office97风格的菜单与工具条在微软的最新97风格(以Office97、VisualStudio97和InternetExplorer为代表)中,出现了新的菜单与工具条,它们都具有浮起效果,菜单有了图标,并且它们实际上都可以是一些独立窗口,拖到程序主窗口的最上方,便被吸了过去,成为了菜单或工具条。
ActiveBar是DataDynamics公司的产品,安装后,你可以在VB的Components 中找到ActiveBarControl一项,将它添加到你的项目中,便可以使用了。
这个控件的使用有点特别,在“属性”中除了颜色、字体等常规内容外,找不到什么实质性的东西,回去看看95的“开始”菜单,安装时它在那里留了一个叫ActiveBarDesigner的应用程序,可是在这个Designer里设计的界面怎么才能让VB接受呢?原来当你在VB中“画”该控件时,点击鼠标右键,会发现在Properties的位置有一项Designer,点击之,就可以在VB中以OLE嵌入的方式打开那个ActiveBarDe signer了,在这里设计的效果,在VB中Run的时候就可以看到了。
用ctListBar制作IE4的List在微软1997年的Web产品(IE4和FrontPage98)中,使用了一种新的List,以或大或小的图标和漂亮的背景取代的白色方框里面被选的蓝色条条,并且可以在一个控件中实现几个List的功能(通过分页来实现)。
为了做出这种精美(与原先蓝白条的List相比,它确实太美了)的List,Gamesman 公司开发了这个名为ctList Bar的控件,将它调入你的项目,在属性的Custom 项中,可以设置它的绝大部分特性,比如横竖、图标的大小、按钮的突起或凹陷、卷轴等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
vb代码打印access报表
作者:不详来源于:中国VB网发布时间:2009-12-18
dim objacc as object
set objacc = createobject("access.application")
objacc.opencurrentdatabase "c:\db.mdb"
objacc.docmd.openreport "表报一"
objacc.quit
set objacc = nothing
如何用VB在窗体中实现闪烁文字
作者:不详来源于:中国VB网发布时间:2009-11-19
闪烁的文字可以在屏幕上起到明显的提示作用。
通过使用VB的Timer控件,程序员可以轻松的在窗体上实现闪烁文字的效果。
本文将演示如何为Label控件加上闪烁效果,这种方法同样适用于其它多种控件。
当你在窗体上加入Timer控件时,它只出现在设计时,而不会在运行时出现可见的控件图标。
Timer控件带有两个重要的参数。
Interval(间隔)属性用来确定Timer控件多久触发一次,其单位为毫秒,因此当该值为500时,就表示一秒钟会触发两次。
Enabled(使能)属性用来确定Timer控件是运行(Enabled = True)还是停止(Enabled = False)状态。
实际的闪烁是在Timer事件中完成的,Timer控件每次触发,程序都会调用Timer事件。
我们可以将Label控件的ForeColor属性设置为黑色(可见)以及和BackColor属性一致的颜色(文字和背景色一致,相当于不可见)。
以下代码可以完成检验ForeColor属性的任务:
Private Sub Timer1_Timer()
If Label1.ForeColor = Label1.BackColor Then
Label1.ForeColor = vbBlack
Else
Label1.ForeColor = Label1.BackColor
End If
End Sub
另外,你也可以让文字采用不同的颜色,比如交替采用红色和绿色:
Private Sub Timer1_Timer()
If Label1.ForeColor = vbRed Then
Label1.ForeColor = vbGreen
Else
Label1.ForeColor = vbRed
End If
End Sub
当你停止文字闪烁时,还要确定文字的状态是可见的并且采用了合适的色彩。
要完成这个功能,你需要在停止闪烁时加入以下代码设置ForeColor 属性:
Timer1.Enabled = False
Label1.ForeColor = vbBlack
用控件带代替菜单项。