1 (изменено: Indomito, 2015-01-13 00:44:36)

Тема: AHK: GUI Как сделать круглые кнопки

Попытался сформулировать название наиболее правильно.

И так есть скрипт

+ GUI_BT_Pic.ahk
Gui Gray:New, +LastFound +AlwaysOnTop -Caption +ToolWindow +HwndMyGuiHwnd
Gui, Gray:Default
Gui , Color, 0
WinSet, Transparent, 200
Gui, Show, x0 y0 NoActivate W%A_ScreenWidth% H%A_ScreenHeight%
Gui, Default


vWinName := "Windows 7"
Gui, New , +OwnDialogs -caption +AlwaysOnTop +HwndMyFocus , %vWinName%
Gui, Margin , 0, 0 ; без caption
Gui, Add, Picture, x0 y0 w580 h435 , C:\AHK\IMG\RestartFon.png
Gui, Add, Picture, x460 y320 w100 h100  vTest1   gTestt1, C:\AHK\IMG\Reload_2.png
Gui, Show, xCenter yCenter

SetTimer lbTopWinLogo, 10
Hotkey, IfWinExist, ahk_id %MyFocus%
Hotkey, *!Tab, TabPressed
Hotkey, IfWinExist, ahk_id %MyFocus%
Hotkey, *LButton, LBpressed
Hotkey, IfWinExist, ahk_id %MyFocus%
Hotkey, *XButton1, TabPressed
Hotkey, IfWinExist, ahk_id %MyFocus%
Hotkey, *XButton2, TabPressed
Hotkey, IfWinExist, ahk_id %MyFocus%
Hotkey, *MButton, TabPressed
Hotkey, IfWinExist, ahk_id %MyFocus%
Hotkey, *RButton, TabPressed
return

Testt1:
    GuiControl, Hide, Test1
    KeyWait, Lbutton
    GuiControl, Show, Test1
Return

GuiClose:
GuiEscape:
SetTimer lbTopWinLogo, off
ExitApp
LBpressed:
   MouseGetPos,,,OutputVarWin
   if (MyFocus = OutputVarWin)
   Click
return
TabPressed:
return
lbTopWinLogo:
if (!WinActive(vWinName))
     WinActivate, %vWinName%
MouseGetPos, OutputVarX, OutputVarY, OutputVarWin
   if (MyFocus = OutputVarWin)
    ToolTip X= %OutputVarX% `n Y= %OutputVarY%  
return

;=====Временная блокировка до окончания написания скрипта
~LWin Up::
~RWin Up::
return

Есть фон картинка, кнопка картинка в PNG-формате с альфа-каналом, т.е. фон прозрачный.

А результате я получаю следующее

http://i64.fastpic.ru/thumb/2015/0112/3e/e104b19e8b66c68c1055fe47467a553e.jpeg

Я понимаю что это Background окна, но победить его у меня не получается

P.S. Убирать таймер и запреты клавиатуры я не стал, может я и там ошибся, что мало вероятно.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

2

Re: AHK: GUI Как сделать круглые кнопки

Наверно, нужно сделать прозрачным бэкграунд контрола картинки.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: GUI Как сделать круглые кнопки

А как? Там только задание цвета.

Подскажи... плиз.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

4

Re: AHK: GUI Как сделать круглые кнопки

Controls: Uncommon Styles and Options

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

5

Re: AHK: GUI Как сделать круглые кнопки

Так?

Gui, Add, Picture, x460 y320 w100 h100 +Background vTest1   gTestt1, C:\AHK\IMG\Reload_2.png

но что то не получается

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

6

Re: AHK: GUI Как сделать круглые кнопки

А если не полениться аннотацию к опциям прочитать?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

7

Re: AHK: GUI Как сделать круглые кнопки

Понял

Gui, Add, Picture, x460 y320 w100 h100 BackgroundTrans vTest1   gTestt1, C:\AHK\IMG\Reload_2.png

Отдельное спасибо teadrinker - я сам бы так и не понял.

Тема закрыта.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

8

Re: AHK: GUI Как сделать круглые кнопки

Подскажите как просто открыть картинку формата .png с помощью Gui. Ато я сколько пытаюсь у меня абсолютно ничего не происходит.

9

Re: AHK: GUI Как сделать круглые кнопки

А как вы пытались?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

10 (изменено: niceice, 2015-01-13 02:01:42)

Re: AHK: GUI Как сделать круглые кнопки

teadrinker пишет:

А как вы пытались?

Просто ввел эту строку кода

Gui, Add, Picture, x460 y320 w100 h100 BackgroundTrans vTest1   gTestt1, C:\AHK\IMG\Reload_2.png

(сменил адрес картинки) в свой скрипт и отдельно эту строку запускал и все равно не открывает мою картинку.

11

Re: AHK: GUI Как сделать круглые кнопки

Добавьте:

Gui, Show

Цитировать предыдущий пост не нужно.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

12

Re: AHK: GUI Как сделать круглые кнопки

teadrinker Доп.вопрос не по теме
Как в коде

Gui, Add, Picture, X%vXReload% Y%vYReload% W%vWReload% H%vHReload% BackgroundTrans vReload   gReload, C:\AHK\IMG\Reload_2.png

Прописать переменные в X,Y,W и H которые лежат в многомерном массиве?

X%arWins[1,1]% - знаю что где то знака % не хватает, но как писать уже подзабыл уже.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

13

Re: AHK: GUI Как сделать круглые кнопки

Добавил. Не работает.

Target label does not exist

Invalid lines

14

Re: AHK: GUI Как сделать круглые кнопки

Проверь метки которые определены в определении

Gui, Add, Picture, x460 y320 w100 h100 BackgroundTrans vTest1   gTestt1, C:\AHK\IMG\Reload_2.png

Должна быть метка - Testt1, а не gTestt1

Я про это

Testt1:
    GuiControl, Hide, Test1
    KeyWait, Lbutton
    GuiControl, Show, Test1
Return
"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

15

Re: AHK: GUI Как сделать круглые кнопки

Indomito пишет:

переменные в X,Y,W и H которые лежат в многомерном массиве?

Честно говоря, никогда не сталкивался с необходимостью использовать многомерные массивы. Это, по-моему, для решения каких-то математических задач нужно, а для упаковки переменных вполне достаточно либо одномерного, либо именованного массива.

Ну а почитать стоит эту тему:
AutoHotkey для чайников! → Как записать выражение в параметр команды, требующий строчного значения?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

16

Re: AHK: GUI Как сделать круглые кнопки

Да, можно и так,видимо так я и делал, ну просто подзабыл

Спасибо.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

17 (изменено: niceice, 2015-01-13 02:49:45)

Re: AHK: GUI Как сделать круглые кнопки

Возможно отобразить картинку без рамок, а сугубо картинку формата .PNG. Запускаю скрипт и мне высвечивается картинка нестандартного размера и формы без системных рамок и кнопок, например разноцветное пятно?

18

Re: AHK: GUI Как сделать круглые кнопки

Можно, только картинка должна быть PNG-формате, т.е. прозрачный фон... можно и не кликабельную.

P.S. Клики мне были нужны для своих целей.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

19

Re: AHK: GUI Как сделать круглые кнопки

Indomito пишет:

Можно, только картинка должна быть PNG-формате, т.е. прозрачный фон... можно и не кликабельную.

Именно то и нужно.

20

Re: AHK: GUI Как сделать круглые кнопки

И в чём суть вопроса то?

Вот не кликабельный код

Gui, Add, Picture, x460 y320 w100 h100 BackgroundTrans vTest1 , C:\AHK\IMG\Reload_2.png

Был он такой

Gui, Add, Picture, x460 y320 w100 h100 BackgroundTrans vTest1  gTestt1, C:\AHK\IMG\Reload_2.png

Я убрал метку обработки, хотя можно по ней например циклически менять картинки...
но это уже другая история

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

21

Re: AHK: GUI Как сделать круглые кнопки

В окне:

PicturePath =  ; указать путь
Gui, Add, Pic, BackgroundTrans, % PicturePath
Gui, Show

Просто картинка:

PicturePath =  ; указать путь
Gui, -Caption +ToolWindow +LastFound
Gui, Color, 123456
WinSet, TransColor, 123456
Gui, Add, Pic, BackgroundTrans, % PicturePath
Gui, Show
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

22

Re: AHK: GUI Как сделать круглые кнопки

Оригинально, но где координаты в окне GUI?

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

23

Re: AHK: GUI Как сделать круглые кнопки

Оригинальности немного, а про координаты niceice, вроде, не спрашивал.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

24

Re: AHK: GUI Как сделать круглые кнопки

А ясно, да скрипт то обычный... я просто создал топик т.к. подзабыл как задавать прозрачность фона - раньше задавал...
ни что не вечно

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

25

Re: AHK: GUI Как сделать круглые кнопки

Максимальная степень извращения(не важный код не цитирую)

cSps    := " "
cTRD := "BackgroundTrans"
vXPos   := 460, vYPos := 320
lbName  := "Reload"
vlbName := "v" lbName cSps "g" lbName
vPath   := "C:\AHK\IMG\Reload_2.png"  
//Пропущено...
btReload := "x" vXPos cSps "y" vYPos  cSps "BackgroundTrans" cSps "v" lbName cSps "g" lbName
//Пропущено...
Gui, Add, Picture, %btReload%, %vPath% 
//Пропущено...

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

26

Re: AHK: GUI Как сделать круглые кнопки

А не подскажете как сделать чтобы картинку Png. открывало "выше" фона рабочего стола, но "ниже" ярлыков и панели пуск?

  • 1.________ярлыки,панель пуск___________
    2.________картинка формата png._________
    3.________фон рабочего стола____________

То есть "ниже" всех, но "выше" только фона рабочего стола.