Форматирование содержимого в окне

Тема в разделе "WASM.HEAP", создана пользователем Mark, 1 мар 2012.

  1. Mark

    Mark Марк

    Публикаций:
    0
    Регистрация:
    15 сен 2011
    Сообщения:
    304
    1) Вопрос конечно оооочень тупой. Проблема в том, что я так и не подобрал запрос для гугла. Подскажите, пожалуйста, как быть, чтобы при изменении размеров окна, содержимое форматировалось вместе с ним. Как в блокноте - увеличиваешь окно, и edit control увеличивается вместе с ним. Наверное, делать надо в WM_SIZE, но как? (Если можно, на С++ а не на delphi)

    2) Еще. Можно ли, чисто тереоретически, изменить шрифт ввода в edit control?

    --------------------------------------------------------------------
    З. Ы. Извиняюсь за такое количество тем.
     
  2. Mark

    Mark Марк

    Публикаций:
    0
    Регистрация:
    15 сен 2011
    Сообщения:
    304
    P. S 2. Поместил в HEAP из за простоты вопроса.
     
  3. FatMoon

    FatMoon New Member

    Публикаций:
    0
    Регистрация:
    28 ноя 2002
    Сообщения:
    954
    Адрес:
    Russia
    1. Смотрите в FASM'e пример "Minipad". Да, надо в WM_SIZE.
    2. Можно. И не только теоретически. Но шрифт в эдите меняется глобально - для всего текстового содержимого. Смотрите тот же самый пример
     
  4. Mark

    Mark Марк

    Публикаций:
    0
    Регистрация:
    15 сен 2011
    Сообщения:
    304
    FatMoon

    А на WinAPI? Я так понимаю Minipad на Ассемблере.
     
  5. Mark

    Mark Марк

    Публикаций:
    0
    Регистрация:
    15 сен 2011
    Сообщения:
    304
    Во, с edit'ом разобрался. Вот только, если честно, не понял с WM_SIZE'ом.
     
  6. Sasha7b9

    Sasha7b9 New Member

    Публикаций:
    0
    Регистрация:
    17 окт 2010
    Сообщения:
    105
    Mark
    А что тут понимать-то? :
    Код (Text):
    1.   .wmsize:
    2.     invoke  GetClientRect,[hwnd],client
    3.     invoke  MoveWindow,[edithwnd],[client.left],[client.top],[client.right],[client.bottom],TRUE
    4.     xor eax,eax
    5.     jmp .finish
    6.  
    7.   client RECT
    Сначала вызываем GetClientRect(). В client он заносит новые размеры окна. Затем вызовом MoveWindow устанавливаем эти размеры в свой edithwnd.