Что нового

Иконка справа, текст по центру

kyi

Новичок
Сообщения
43
Репутация
0
Добрый день!

Подскажите, а можно ли как то сделать что бы иконка была всегда справа, а текст так как я захочу, в данном случае по центру?
Все что я смог сделать это все разместить по центру или слева/справа
Код:
#include <StaticConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Include <GuiButton.au3>

Local $test = GUICreate("test",350,350,-1,-1,-1,-1)
GUICtrlCreateButton("  Мой текст",40,100,200,30,$BS_CENTER,-1)
GUICtrlSetTip(-1,'test' & @CRLF & 'test',' ','1',2)
GUICtrlSetImage(-1, "shell32.dll", 22, 0)

GUICtrlCreateButton("  Мой текст",40,50,200,30,$BS_LEFT,-1)
GUICtrlSetTip(-1,'test' & @CRLF & 'test',' ','1',2)
GUICtrlSetImage(-1, "shell32.dll", 22, 0)

GUICtrlCreateButton("  Мой текст",40,150,200,30,$BS_RIGHT,-1)
GUICtrlSetTip(-1,'test' & @CRLF & 'test',' ','1',2)
GUICtrlSetImage(-1, "shell32.dll", 22, 0)

GUISetState(@SW_SHOW,$test)


While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

	EndSwitch
WEnd
 
Автор
K

kyi

Новичок
Сообщения
43
Репутация
0
Не пойму, то ли никто не знает, то ли форум помер.
Пока добился нужного результата прописыванием кучи пробелов
Код:
GUICtrlCreateButton("Мой текст           ",40,150,200,30,$BS_RIGHT,-1)

но мне кажется это не совсем правильно, наверняка есть более кошерный способ.
 

joiner

Модератор
Локальный модератор
Сообщения
3 036
Репутация
504
Код:
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

Local $Form1 = GUICreate("Form1", 428, 199, 459, 263)
GUICtrlCreateLabel("", 22, 22, 207, 20, $SS_BLACKFRAME)
GUICtrlSetState(-1, $GUI_DISABLE)
Local $Label1 = GUICtrlCreateLabel("Label1", 24, 24, 187, 17)
Local $Icon1 = GUICtrlCreateIcon("shell32.dll", 22, 210, 24, 16, 16)
GUICtrlCreateLabel("", 22, 70, 207, 20, $SS_BLACKFRAME)
GUICtrlSetState(-1, $GUI_DISABLE)
Local $Label2 = GUICtrlCreateLabel("Label2", 24, 72, 187, 17, $SS_CENTER)
Local $Icon2 = GUICtrlCreateIcon("shell32.dll", 22, 210, 72, 16, 16)
GUICtrlCreateLabel("", 22, 112, 207, 20, $SS_BLACKFRAME)
GUICtrlSetState(-1, $GUI_DISABLE)
Local $Label3 = GUICtrlCreateLabel("Label3", 24, 114, 187, 17, $SS_RIGHT)
Local $Icon3 = GUICtrlCreateIcon("shell32.dll", 22, 210, 114, 16, 16)
GUISetState()


While 1
	Switch GUIGetMsg()
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Label1
			MsgBox(0,'','')
	EndSwitch
WEnd
насчет кашерности не знаю, но чтобы получилось как хочется, нужно что-то сделать. Это как пример.
 
Автор
K

kyi

Новичок
Сообщения
43
Репутация
0
Ничего себе :shok:
Это как то изподвыподверта получается.
Что то мне кажется этот способ дальше моего от кошерности.
 

joiner

Модератор
Локальный модератор
Сообщения
3 036
Репутация
504
я же написал
но чтобы получилось как хочется, нужно что-то сделать
да не особо сложно это. если писать что то дельное, то даже интерфейс в три строчки не уложишь )))
 
Верх