Что нового

BS_SPLITBUTTON - новый стиль для кнопки (Vista)

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
Простой пример...

:smile:

Код:
#include <GUIButton.au3>
#Include <GUIConstantsEx.au3>
#Include <GUIMenu.au3>
#Include <WindowsConstants.au3>

$hForm = GUICreate('MyGUI', 400, 400)
$Button = GUICtrlCreateButton('Options', 20, 20, 140, 40, $BS_SPLITBUTTON)
;~_GUICtrlButton_SetSplitInfo(...)
$Dummy = GUICtrlCreateDummy()

Dim $Menu[4]

$Menu[0] = GUICtrlCreateContextMenu($Dummy)
$Menu[1] = GUICtrlCreateMenuItem('Option 1', $Menu[0])
$Menu[2] = GUICtrlCreateMenuItem('Option 2', $Menu[0])
$Menu[3] = GUICtrlCreateMenuItem('Option 3', $Menu[0])
$Menu[0] = GUICtrlGetHandle($Menu[0])

GUIRegisterMsg($WM_NOTIFY, 'WM_NOTIFY')
GUISetState()

While 1
	Switch GUIGetMsg()
		Case $GUI_EVENT_CLOSE
			ExitLoop
		Case $Button
			MsgBox(64, ':-)', 'You presse a button.')
		Case $Dummy
			Switch GUICtrlRead($Dummy)
				Case $Button
					_GUICtrlMenu_TrackPopupMenu($Menu[0], $hForm)
;~				Case ...
;~
			EndSwitch
		Case $Menu[1]
			ConsoleWrite('Option 1...' & @CR)
		Case $Menu[2]
			ConsoleWrite('Option 2...' & @CR)
		Case $Menu[3]
			ConsoleWrite('Option 3...' & @CR)
	EndSwitch
WEnd

Func WM_NOTIFY($hWnd, $Msg, $wParam, $lParam)

    Local $tNMBCDROPDOWN = DllStructCreate($tagNMHDR & ';' & $tagRECT, $lParam)
	Local $CtrlID = DllStructGetData($tNMBCDROPDOWN, 'IDFrom')
    Local $Code = DllStructGetData($tNMBCDROPDOWN, 'Code')

    Switch $Code
		Case $BCN_DROPDOWN
			GUICtrlSendToDummy($Dummy, $CtrlID)
;~		Case ...
;~
	EndSwitch
    Return $GUI_RUNDEFMSG
EndFunc   ;==>WM_NOTIFY


post_img_069.png
 

KING536

Новичок
Сообщения
21
Репутация
0
а как это всё поставить , я новичок в этом деле , раньше работал на delphi :(
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
Куда поставить?
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
Да никак, это нестандартный элемент. Делай, как в моем примере.
 

KING536

Новичок
Сообщения
21
Репутация
0
это в autoit писать и сохронять , дай свой skyp мой king_530
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
KING536 сказал(а):
...дай свой skyp мой king_530.

Нет, не дам. Если есть вопросы, форум к твоим услугам.

KING536 сказал(а):
а как окно сделать с кнопками

Такие вопросы у нас задаются в разделе "AutoIt для новичков". Но для начала, советую прочесть правила форума.
 

KING536

Новичок
Сообщения
21
Репутация
0
а как сделать что бы по нажатию кнопки открывался .exe afqk
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,669
Репутация
2,463
KING536 [?]
У тебя трудности с пониманием написанного?

P.S
Если с дельфи пришёл, то таких вопросов возникать не должно.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
623
OffTopic:
CreatoR [?]
Если с дельфи пришёл, то таких вопросов возникать не должно.
полагаю, он его в школе проходил, вместе с пузырьковыми методами ;D
 
Верх