PDA

Показать полную графическую версию : [решено] [GUI] прокрутка формы


D_Master
15-02-2009, 18:03
Всем привет!

Есть форма. Надо добавить возможность скроллинга формы вверх/вниз.
Пробовал сделать так:
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_HSCROLL,$WS_BO RDER,$WS_CLIPSIBLINGS))
Но при запуске скрипта пишет следующие ошибки:
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,87) : WARNING: $WS_MINIMIZEBOX: possibly used before declaration.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,99) : WARNING: $WS_SYSMENU: possibly used before declaration.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,111) : WARNING: $WS_CAPTION: possibly used before declaration.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,121) : WARNING: $WS_POPUP: possibly used before declaration.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,137) : WARNING: $WS_POPUPWINDOW: possibly used before declaration.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,147) : WARNING: $WS_GROUP: possibly used before declaration.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,159) : WARNING: $WS_HSCROLL: possibly used before declaration.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_HSCROLL,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,170) : WARNING: $WS_BORDER: possibly used before declaration.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_HSCROLL,$WS_BO RDER,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,187) : WARNING: $WS_CLIPSIBLINGS: possibly used before declaration.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_HSCROLL,$WS_BO RDER,$WS_CLIPSIBLINGS)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3(4,87) : ERROR: $WS_MINIMIZEBOX: undeclared global variable.
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
C:\Users\D_Master\AppData\Local\Temp\test.au3 - 1 error(s), 9 warning(s)

Как правильно сделать скроллинг формы?

ЗЫ Код генерировался редактором Koda.

beve
15-02-2009, 18:39
Вот:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Мастер создания релиза", 784, 584, 187, 123, BitOR($WS_MINIMIZEBOX,$WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_GROUP,$WS_HSCROLL,$WS_VS CROLL,$WS_BORDER,$WS_CLIPSIBLINGS))
GUISetState()


While 1
$Msg = GUIGetMsg()
Switch $Msg
Case $GUI_EVENT_CLOSE
Exit
Endswitch
Sleep(50)
wend

Если не нужна горизонтальная прокрутка, то нужно убрать стиль $WS_HSCROLL

Но по моему, нужно оставить только эти стили: $WS_SYSMENU,$WS_CAPTION,$WS_VSCROLL,$WS_BORDER, а все остальные удалить.

D_Master
15-02-2009, 18:55
beve, спасибо, скролл появился, только вот почему-то сама форма вниз не прокручивается :unsure:

Creat0R
15-02-2009, 20:01
только вот почему-то сама форма вниз не прокручивается »
Это не так всё просто, на эту тему есть решение тут (http://www.autoitscript.com/forum/index.php?showtopic=34433). Да и в справке по UDF оно вроде есть...




© OSzone.net 2001-2012