找回密码
 加入
搜索
查看: 2654|回复: 10

工具栏中的图标怎样修改

[复制链接]
发表于 2009-6-20 16:43:19 | 显示全部楼层 |阅读模式
本帖最后由 jycel 于 2009-6-20 18:41 编辑

如图:先还是为是普通按钮做成的!在帮助中找到了很多TOOLBAR的函数,里面全是英文,没有找到可修改图标的地方!还有个问题就是对中文不完全支持,只显示一半,不会又得转换一次?
#include <GuiToolbar.au3>
#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Constants.au3>
 
Opt('MustDeclareVars', 1)
 
$Debug_TB = False ; Check ClassName being passed to functions, set to True and use a handle to another control to see it work
 
_Main()
 
Func _Main()
        Local $hGUI, $hToolbar, $aStrings[4]
        Local Enum $idNew = 1000, $idOpen, $idSave, $idHelp
 
        ; Create GUI
        $hGUI = GUICreate("Toolbar", 400, 300)
        $hToolbar = _GUICtrlToolbar_Create ($hGUI)
        GUISetState()
 
        ; Add standard system bitmaps
        _GUICtrlToolbar_AddBitmap ($hToolbar, 1, -1, $IDB_STD_LARGE_COLOR)
 
        ; Add strings
        $aStrings[0] = _GUICtrlToolbar_AddString ($hToolbar, "&中华人民共和国中华人民共和国")
        $aStrings[1] = _GUICtrlToolbar_AddString ($hToolbar, "&Open")
        $aStrings[2] = _GUICtrlToolbar_AddString ($hToolbar, "&Save")
        $aStrings[3] = _GUICtrlToolbar_AddString ($hToolbar, "&Help")
 
        ; Add buttons
        _GUICtrlToolbar_AddButton ($hToolbar, $idNew, $STD_FILENEW, $aStrings[0])
        _GUICtrlToolbar_AddButton ($hToolbar, $idOpen, $STD_FILEOPEN, $aStrings[1])
        _GUICtrlToolbar_AddButton ($hToolbar, $idSave, $STD_FILESAVE, $aStrings[2])
        _GUICtrlToolbar_AddButtonSep ($hToolbar)
        _GUICtrlToolbar_AddButton ($hToolbar, $idHelp, $STD_HELP, $aStrings[3])
 
        ; Loop until user exits
        Do
        Until GUIGetMsg() = $GUI_EVENT_CLOSE
 
EndFunc   ;==>_Main

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2009-6-20 18:40:08 | 显示全部楼层
知道的请指点下!谢谢!
发表于 2009-6-21 01:48:15 | 显示全部楼层
编译的时候,是什么图标就变什么图标拉
发表于 2009-6-21 05:00:45 | 显示全部楼层
应该有方法的
发表于 2009-6-21 09:45:04 | 显示全部楼层
效果图:
#include <GuiToolbar.au3>
#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Constants.au3>

_Main()

Func _Main()
Local $hGUI, $hToolbar
$custombmp1 = "vista.bmp" 
$custombmp2 = "butterfly.bmp" 
$custombmp3= "guest.bmp" 
$custombmp4 = "ball.bmp" 
$hGUI = GUICreate("Toolbar工具栏自定义图标示例by lynfr8", 400, 300)
$hToolbar = _GUICtrlToolbar_Create ($hGUI)
GUISetState()
$Bitmap = _GUICtrlToolbar_LoadBitmap($hToolbar,$custombmp1)
$Bitmap = _GUICtrlToolbar_LoadBitmap($hToolbar,$custombmp2)
$Bitmap = _GUICtrlToolbar_LoadBitmap($hToolbar,$custombmp3)
$Bitmap = _GUICtrlToolbar_LoadBitmap($hToolbar,$custombmp4)

_GUICtrlToolbar_SetBitmapSize($hToolbar, 20, 20)
_GUICtrlToolbar_AddButton ($hToolbar, $Bitmap, 0)
_GUICtrlToolbar_AddButton ($hToolbar, $Bitmap, 1)
_GUICtrlToolbar_AddButton ($hToolbar, $Bitmap, 2)
_GUICtrlToolbar_AddButton ($hToolbar, $Bitmap, 3)

Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc 

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2009-6-21 09:47:03 | 显示全部楼层
至于支持中文的问题
试试在27行位置加入
_GUICtrlToolbar_SetUnicodeFormat()
发表于 2009-6-21 09:57:16 | 显示全部楼层
#include <GuiToolbar.au3>
#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Constants.au3>
#Include <GuiToolBar.au3>

Opt('MustDeclareVars', 1)

$Debug_TB = False ; Check ClassName being passed to functions, set to True and use a handle to another control to see it work

_Main()

Func _Main()
        Local $hGUI, $fUnicode, $hToolbar, $aStrings[4]
        Local Enum $idNew = 1000, $idOpen, $idSave, $idHelp

        ; Create GUI
        $hGUI = GUICreate("Toolbar", 800, 600)
        $hToolbar = _GUICtrlToolbar_Create ($hGUI)
        GUISetState()

        ; Add standard system bitmaps
        _GUICtrlToolbar_AddBitmap ($hToolbar, 1, -1, $IDB_STD_LARGE_COLOR)
                $fUnicode = _GUICtrlToolbar_GetUnicodeFormat($hToolbar)
                _GUICtrlToolbar_SetUnicodeFormat($hToolbar, Not $fUnicode)

        ; Add strings
        $aStrings[0] = _GUICtrlToolbar_AddString ($hToolbar, "&中华人民共和国中华人民共和国")
        $aStrings[1] = _GUICtrlToolbar_AddString ($hToolbar, "&Open")
        $aStrings[2] = _GUICtrlToolbar_AddString ($hToolbar, "&Save")
        $aStrings[3] = _GUICtrlToolbar_AddString ($hToolbar, "&Help")

        ; Add buttons
        _GUICtrlToolbar_AddButton ($hToolbar, $idNew, $STD_FILENEW, $aStrings[0])
        _GUICtrlToolbar_AddButton ($hToolbar, $idOpen, $STD_FILEOPEN, $aStrings[1])
        _GUICtrlToolbar_AddButton ($hToolbar, $idSave, $STD_FILESAVE, $aStrings[2])
        _GUICtrlToolbar_AddButtonSep ($hToolbar)
        _GUICtrlToolbar_AddButton ($hToolbar, $idHelp, $STD_HELP, $aStrings[3])

        ; Loop until user exits
        Do
        Until GUIGetMsg() = $GUI_EVENT_CLOSE

EndFunc   ;==>_Main
 楼主| 发表于 2009-6-21 17:36:32 | 显示全部楼层
刚上网,马上试下!谢谢指点哈!
 楼主| 发表于 2009-6-21 18:44:29 | 显示全部楼层
更换图片和中文都搞定了,图片怎么一直对不齐!_GUICtrlToolbar_AddButton 帮助中都试了下没效果!
#include <GuiToolbar.au3>
#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Constants.au3>

_Main()

Func _Main()
Local $hGUI, $hToolbar,$fUnicode
$custombmp1 = "1.bmp" 
$custombmp2 = "2.bmp" 
$custombmp3= "3.bmp" 
$custombmp4 = "4.bmp" 
$hGUI = GUICreate("Toolbar工具栏自定义图标示例by lynfr8", 400, 300)
$hToolbar = _GUICtrlToolbar_Create ($hGUI)
GUISetState()



$Bitmap = _GUICtrlToolbar_LoadBitmap($hToolbar,$custombmp1)
$Bitmap = _GUICtrlToolbar_LoadBitmap($hToolbar,$custombmp2)
$Bitmap = _GUICtrlToolbar_LoadBitmap($hToolbar,$custombmp3)
$Bitmap = _GUICtrlToolbar_LoadBitmap($hToolbar,$custombmp4)
;_GUICtrlToolbar_LoadImages($hToolbar, $IDB_STD_LARGE_COLOR)
$fUnicode = _GUICtrlToolbar_GetUnicodeFormat($hToolbar)
_GUICtrlToolbar_SetUnicodeFormat($hToolbar, Not $fUnicode)
$custombmp1 = _GUICtrlToolbar_AddString ($hToolbar, "&1号键")
$custombmp2 = _GUICtrlToolbar_AddString ($hToolbar, "&2号键")
$custombmp3 = _GUICtrlToolbar_AddString ($hToolbar, "&3号键")
$custombmp4 = _GUICtrlToolbar_AddString ($hToolbar, "&4号键")

_GUICtrlToolbar_SetBitmapSize($hToolbar, 48, 20)

_GUICtrlToolbar_AddButton ($hToolbar, $Bitmap, 0,$custombmp1)
_GUICtrlToolbar_AddButtonSep ($hToolbar)
_GUICtrlToolbar_AddButton ($hToolbar, $Bitmap, 1,$custombmp2)
_GUICtrlToolbar_AddButtonSep ($hToolbar)
_GUICtrlToolbar_AddButton ($hToolbar, $Bitmap, 2,$custombmp3)
_GUICtrlToolbar_AddButtonSep ($hToolbar)
_GUICtrlToolbar_AddButton ($hToolbar, $Bitmap, 3,$custombmp4)

Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc 

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2009-6-21 18:53:28 | 显示全部楼层
48*48的图像看起太小了,不知道那儿可以调整!我再找找,知道的也请再指下
 楼主| 发表于 2009-6-21 19:08:03 | 显示全部楼层
本帖最后由 jycel 于 2009-6-21 19:10 编辑

不加这一句_GUICtrlToolbar_SetBitmapSize($hToolbar, 48, 20)就解决了不对齐的问题,但图像大小还不知道怎么来处理!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-26 12:15 , Processed in 0.114899 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表