Как менять позицию контролов при изм. размеров окна?

Тема в разделе "WASM.BEGINNERS", создана пользователем KondraT, 22 июн 2008.

  1. KondraT

    KondraT Member

    Публикаций:
    0
    Регистрация:
    22 янв 2006
    Сообщения:
    175
    Всем привет.

    Возник вопрос, на который не могу найти более - менее оптимальный ответ.
    Имеется окно, содержащее несколько контролов (кнопки, едитбоксы, и два ричедита). Как при изменении размеров основного окна менять позиции всех контролов? Вычислять позиции для каждого контрола или есть другие методы?
     
  2. S_Alex

    S_Alex Alex

    Публикаций:
    0
    Регистрация:
    27 авг 2004
    Сообщения:
    561
    Адрес:
    Ukraine
    Посмотри вот это.
    http://www.kirsoft.com.ru/download/asm/KSresizer/
    Может это то, что нужно.
     
  3. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
  4. KondraT

    KondraT Member

    Публикаций:
    0
    Регистрация:
    22 янв 2006
    Сообщения:
    175
    Спасибо. Интересный модуль к Радасму. Но я не юзаю .dlg, к сожалению...

    может м подходит, но я не могу сообразить как сделать так чтобы контролы не налезли друг на друга? Как сделать минимально допустимые размеры окна, после которых уменьшать окно нельзя?
    К приимеру, если контрол один и на всю клиентскую часть окна - можно сделать так:
    Код (Text):
    1. mov eax, lPm
    2. mov edx, eax
    3. and eax, 0FFFFh
    4. shr edx, 16
    5. invoke MoveWindow, hEdit1, 0,0, eax, edx, TRUE
    а вот как с 10 контролами...
    Дайте примерчик, может у кого-то есть.
     
  5. halyavin

    halyavin New Member

    Публикаций:
    0
    Регистрация:
    13 май 2005
    Сообщения:
    252
    Адрес:
    Russia
    Очень просто - надо писать на яве. Для этого там изобретен механизм лайаутов, позволяющий изменять позицию контролов при изменении размеров окна любым нужным способом.
     
  6. Voodoo

    Voodoo New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2003
    Сообщения:
    297
    Адрес:
    Новосибирск
    Нафиг на яве. На яве гуи писать не надо. Да и вообще для клиента не особо стоит.
    Есть QT, TCL/TK, WTL - в них тоже есть авторесайз. Это С/С++, для асма, к сожалению, не видел.
     
  7. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    WM_GETMINMAXINFO
     
  8. driver

    driver New Member

    Публикаций:
    0
    Регистрация:
    18 июн 2008
    Сообщения:
    302
    ???
    в свойствах окна можно указать, что делать с позицией контролов при изменении размера окна, вроде бы
     
  9. UTeX

    UTeX New Member

    Публикаций:
    0
    Регистрация:
    19 окт 2007
    Сообщения:
    584
    driver
    :-/
    в каких еще свойствах?