网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 网络学院 >> 程序设计 >> VB编程 >> 文章正文
  如何实现那种流行的平面按钮            【字体:
如何实现那种流行的平面按钮
作者:佚名    文章来源:不详    点击数:    更新时间:2007-9-12    
如何实现那种流行的平面按钮


编号:QA000029
建立日期: 1998年10月1日 最后修改日期:2000年10月15日
所属类别:

    Visual Basic - 第三方控制
    Visual Basic - Windows 9x控件
    Visual Basic - 标准控件

张立斌:
    时下流行的那种按钮(平时是平面,鼠标移上去后突起,按下去是凹陷状,移开后又成为平面)在VB5中是如何实现的?

回答:

    如果你想要在单独的按钮上实现这种效果,可以使用微软提供的一个叫Soft Button的例子,你可以从http://msdn.microsoft.com/vbasic/downloads/samples.asp免费下载,也可以下载SoftBttn.exe。
正在装载数据……
安装这个例子之后你可以将其编译成ocx,然后在自己的程序中使用。这个例子提供了完整的源程序,你可以详细地研究其工作原理。你也可以下载类似的免费控件FlashButtonv2.zip。
    如果你想使自己的工具条也变成这种风格,可以从微软的站点上下载免费的控件CoolBar,下载地址是:http://divmium.microsoft.com/vbasic/updates/coolbar.asp。(这个控件也包括在VB6中)如果你还没有在微软的站点上注册过,你需要先按照主页上的说明进行免费注册(需要提供合法的VB系列号)。这个控件虽然存在一些缺陷,但总体感觉还可以,它不但支持凹陷/平面效果,还支持船坞式(dockable)效果,也就是允许最终用户调整工具条的布局。如果你只想要凹陷/平面效果,而不需要船坞式效果,那么只要你的Win95系统中的Comctl32.dll的版本号高于4.70,再加上几行简单的VB代码就够了。
    首先建立一个模块(.BAS),输入以下代码:
    Public Const WM_USER = &H400
    Public Const TB_SETSTYLE = WM_USER + 56
    Public Const TB_GETSTYLE = WM_USER + 57
    Public Const TBSTYLE_FLAT = &H800
    Public Declare Function SendMessageLong Lib "user32" Alias "SendMessageA" _
     (ByVal hwnd As Long, _
     ByVal wMsg As Long, _
     ByVal wParam As Long, _
     ByVal lParam As Long) As Long
    Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" _
     (ByVal hWnd1 As Long, _
     ByVal hWnd2 As Long, _
     ByVal lpsz1 As String, _
     ByVal lpsz2 As String) As Long
     然后在窗体中输入以下代码(这里假定你的工具条叫做Toolbar1):
    Private Sub MakeFlat()
     Dim style As Long
     Dim hToolbar As Long
     Dim r As Long
     hToolbar = FindWindowEx(Toolbar1.hwnd, 0&, "ToolbarWindow32", vbNullString)
     style = SendMessageLong(hToolbar, TB_GETSTYLE, 0&, 0&)
     If style And TBSTYLE_FLAT Then
     style = style Xor TBSTYLE_FLAT
     Else: style = style Or TBSTYLE_FLAT
     End If
     r = SendMessageLong(hToolbar, TB_SETSTYLE, 0, style)
     Toolbar1.Refresh
    End Sub
    再在Form_Load过程中调用MakeFlat就行了。
    shawn cao的意见:
    VB6.0中的Toolbar提供了这种功能.(在部件 Microsoft Windows common control 6.0中)。在Form中放置一个Toolbar,然后打开其属性页. 将"通用"页中最后一项"式样"改为"1-tbrFlat", 在该Toolbar上的按钮即为平面按钮。(也可直接改变Toolbar的Style属性为"1-tbrFlat")。

此问题由李海回答。  




本文来源:http://blog.csdn.net/lanman/archive/2007/08/28/1761821.aspx
站内文章搜索 高级搜索
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
     如何在ado中使用connect…
     vb 贪吃蛇 单人版游戏 (…
     关于在vb中进行com组件的…
     用vb6.0编写自我升级的程…
     vb自动登陆网络站点详解…
     vb打造超酷个性化菜单(…
  • Java Swing实现俄罗斯方块

  • c++实现系统托盘图标

  • Ajax - javascript之实现…

  • 初学者,你应当如何学习C++以…

  • 汇编来实现OOP思想

  • 在C++实现C#中的属性(Proper…

  • 把游戏变成com组件,实现框架…

  • 在C++实现C#中的属性(Proper…

  • 如何在C#中使用Win32和其他库…

  • 如何用VB实现Modbus串行通讯

  •   网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    网络学院©2007 www.23book.net
    为您提供web编程,vb编程,vc编程,服务器架设管理,数据库设计等方面的知识 站长:David