在autohotkey中,如何删除黑色按钮边框?我只想要一个没有任何边框的按钮。
我尝试过所有这些样式修饰符都无济于事。
gui, add, button, hwndMyButton
Control, Style, -0x0,, ahk_id %MyButton% ;remove BS_PUSHBUTTON
Control, Style, -0x1,, ahk_id %MyButton% ;remove BS_DEFPUSHBUTTON
Control, Style, +0x8000,,ahk_id %MyButton% ;add BS_FLAT
Control, Style, +0x40,, ahk_id %MyButton% ;add BS_ICON
答案 0 :(得分:3)
JoeDF有一个很好的例子,但我并不想添加这么大的图书馆(它确实比我需要的更多。
所以,我只是使用了一个图片控件。
gui, add, picture h16 w16 vMyButton gMyProcedure, icon0, mydll
然后我写了一个很小的library called Mousey,它会将光标变成一只手,这样当鼠标经过它时用户就知道它是一个按钮。当您点击图标时,很容易使图标发生变化 - 因此您可以使用此程序显示"按下"并且"未压缩"的状态。
效果是我现在有一个很好的小图标,用于"按钮"。
;http://ahkscript.org/boards/viewtopic.php?p=48057#p48057
#SingleInstance, On
#NoEnv
SetBatchLines, -1
#include mousey.ahk
toggle := 0
gui, add, picture, h32 vIconButton hwndIconButton gtoggleicon icon45, shell32.dll
mouseycursor := mousey_init(IconButton,"hand")
gui, show
return
toggleicon:
if(toggle){
guicontrol,,IconButton, *icon45 shell32.dll
toggle := 0
}else{
guicontrol,,IconButton, *icon28 shell32.dll
toggle := 1
}
return
guiclose:
mousey_close(mouseycursor)
exitapp
答案 1 :(得分:2)
您可以使用图像完全自定义GUI。在我们的例子中,它是按钮。
AHK GUI的图像按钮。
来源:https://github.com/AHK-just-me/Class_ImageButton
论坛主题:http://ahkscript.org/boards/viewtopic.php?t=1103
这里提供了一个示例:https://github.com/AHK-just-me/Class_ImageButton/blob/master/Sources/Sample.ahk
#NoEnv
SetBatchLines, -1
#Include Class_ImageButton.ahk
; ----------------------------------------------------------------------------------------------------------------------
Gui, DummyGUI:Add, Pic, hwndHPIC, PIC1.jpg
SendMessage, 0x0173, 0, 0, , ahk_id %HPIC% ; STM_GETIMAGE
HPIC1 := ErrorLevel
GuiColor := "Blue"
Gui, Margin, 50, 20
Gui, Font, s10
Gui, Color, %GuiColor%
ImageButton.SetGuiColor(GuiColor)
Gui, Add, Button, vBT1 w200 hwndHBT1, Button 1`nLine 2
Opt1 := [0, 0x80CF0000, , "White", "H", , "Red", 4] ; normal flat background & text color
Opt2 := [ , "Red"] ; hot flat background color
Opt5 := [ , , ,"Gray"] ; defaulted text color -> animation
If !ImageButton.Create(HBT1, Opt1, Opt2, , , Opt5)
MsgBox, 0, ImageButton Error Btn1, % ImageButton.LastError
Gui, Show, , Image Buttons
Return
; ----------------------------------------------------------------------------------------------------------------------
GuiClose:
GuiEscape:
ExitApp