Что нового

[Элементы GUI] Разный и не применяется размер шрифта на кнопках

glax24

Знающий
Сообщения
72
Репутация
14
Задаю размер шрифта для гуи таким образом
Код:
GUICreate("Быстрый запуск",480,250)
GUISetFont(19,400)

Размер шрифта меняется на всем гуи.
На 2 кнопках надо изменить размер шрифта, меняю так
Код:
$ButtonS4=GUICtrlCreateButton ("Уд. стататические маршруты", 200,110,110,25,BitOR($BS_CENTER, $BS_MULTILINE))
GUICtrlSetFont(-1,8,400)
$ButtonS5=GUICtrlCreateButton ("Восстановить host", 200,140,110,25,BitOR($BS_CENTER, $BS_MULTILINE))
GUICtrlSetFont(-1,8,400)

В LiveCD размер меняется на всем интерфейсе гуи кроме кнопок. Почему не применяется размер шрифта на кнопках?
 

madmasles

Модератор
Глобальный модератор
Сообщения
7 790
Репутация
2 319
glax24,
А если попробовать убрать GUISetFont() и для каждого элемента устанавливать свой размер?
 
Автор
G

glax24

Знающий
Сообщения
72
Репутация
14
madmasles
Убрал GUISetFont(), размер шрифта на кнопках не применяется.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7 790
Репутация
2 319
glax24,
Посмотрите эту UDF .
 
Автор
G

glax24

Знающий
Сообщения
72
Репутация
14
madmasles
Можно с примером как это использовать.
Я сделал так но ничего не изменилось
Код:
$ButtonS4=GUICtrlCreateButton ("", 200,110,110,25,BitOR($BS_CENTER, $BS_MULTILINE))
;GUICtrlSetFont(-1,8,400)
 $aSize = _StringSize("Уд. стататические маршруты")
GUICtrlSetData($ButtonS4, $aSize[0])
 
Автор
G

glax24

Знающий
Сообщения
72
Репутация
14
madmasles
Я и сделал как понял из тех примеров но не получилось, что сделал не так? И при использовании StringSize.au3 размер скомпилированного файла увеличивается вдвое был 300Кб стал 600Кб. И почему не применяется размер шрифта при использование GUICtrlSetFont.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7 790
Репутация
2 319
glax24,
Код:
#include <GUIConstantsEx.au3>
#include 'StringSize.au3'

Dim $aFont[5] = [4, 'Arial', 'Tahoma', 'Courier New', 'Comic Sans MS']
Dim $aSize[5] = [4, 9, 12, 10, 15]
Dim $aWeight[3] = [2, 400, 600]
$sText = ''

$hGUI = GUICreate('String Sizing Test', 500, 200)
$iRandom = Random(5, 20, 1)
ConsoleWrite('$iRandom: ' & $iRandom * 2 & @LF)
For $j = 1 To $iRandom
	$sText &= Chr(Random(65, 90, 1)) ;A-Z
	$sText &= Chr(Random(97, 122, 1)) ;a-z
Next
$iSize = $aSize[Random(1, 4, 1)]
ConsoleWrite('$iSize: ' & $iSize & @LF)
$iWeight = $aWeight[Random(1, 2, 1)]
ConsoleWrite('$iWeight: ' & $iWeight & @LF)
$sFont = $aFont[Random(1, 4, 1)]
ConsoleWrite('$sFont: ' & $sFont & @LF)
$aStringSize = _StringSize($sText, $iSize, $iWeight, 0, $sFont, 0, $hGUI)
$iX = Int((500 - Int($aStringSize[2] * 1.1)) / 2)
$nButton = GUICtrlCreateButton($aStringSize[0], $iX, 50, Int($aStringSize[2] * 1.1), $aStringSize[3])
GUICtrlSetFont(-1, $iSize, $iWeight, 0, $sFont)
GUISetState()
While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $nButton
			MsgBox(64, 'Info', 'Click')
	EndSwitch
WEnd
 
Автор
G

glax24

Знающий
Сообщения
72
Репутация
14
madmasles
Это конечно все замечательно, но Вы меня наверное не правильно поняли, мне не надо изменять размер кнопки под текст. У меня вопрос почему под LiveCD не изменяется размер шрифта только на кнопках и как это исправить, что бы можно было изменить размер шрифта на кнопках? Я не зря привел в первом посте скриншоты, чтоб показать что размер шрифта на кнопках не меняется.
 
Верх