[решено] Оптимизировать окно под разрешение экрана

Ответить
Аватара пользователя
Centrinar

[решено] Оптимизировать окно под разрешение экрана

Сообщение Centrinar »

Скрипт создает GUI окно 832, 540, на FullHD все ок, но на мелких экранах, например при разрешении 1200*600 оно соответственно не помещается полностью. Как решаются подобные проблемы? СПАСИБО.
Аватара пользователя
Creat0R

Re: [решено] Оптимизировать окно под разрешение экрана

Сообщение Creat0R »

Цитата Centrinar:



Как решаются подобные проблемы?
[решено] Оптимизировать окно под разрешение экрана




С помощью макросов @DesktopWidth и DesktopHeight.
Аватара пользователя
Centrinar

Re: [решено] Оптимизировать окно под разрешение экрана

Сообщение Centrinar »

Соответственно мне необходимо все элементы подстраивать т.е. и кнопки и лэйблы и т.д.? Если не затруднит можно примерчик
Аватара пользователя
Centrinar

Re: [решено] Оптимизировать окно под разрешение экрана

Сообщение Centrinar »

Цитата Centrinar:



Соответственно мне необходимо все элементы подстраивать т.е. и кнопки и лэйблы и т.д.?
[решено] Оптимизировать окно под разрешение экрана




Для этого существует функция GUICtrlSetResizing()
Аватара пользователя
Centrinar

Re: [решено] Оптимизировать окно под разрешение экрана

Сообщение Centrinar »

Дай те пож пример, в справке пример не работает
Аватара пользователя
Centrinar

Re: [решено] Оптимизировать окно под разрешение экрана

Сообщение Centrinar »

Centrinar, Окно делается для маленького экрана, а кнопкой "максимизировать" оно делается на весь экран. Второй вариант: окно делается с прокруткой или вкладками или меню или с комбобоксами, кстати, 540 укладывается в разрешение 600. А вот с рассчётом, о котором Creat0R сказал выше...





Код:

Код: Выделить всё

$x=832
$y=540
$x1=300
If 1024 > @DesktopWidth Then
    $x=768
    $x1=100
EndIf
If 768 > @DesktopHeight Then
    $y=500
EndIf
$GUI=GUICreate('erger', $x, $y)
$x2=10
$y2=0
For $i = 1 to 20
    If $i > 10 Then
        $x2=$x1
        $y2=300
    EndIf
    GUICtrlCreateButton('Button', $x2, 30*$i-$y2, 70, 25)
Next
GUISetState()
While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case -3
            Exit
    EndSwitch
WEnd

В чём проблема? Вариант

Код:

Код: Выделить всё

If 1024 > @DesktopWidth Then $x=768

настолько сложен?
Ответить

Вернуться в «AutoIt»