Страница: 1 |
Вопрос: Запрет изменения размеров. | Добавлено: 18.08.04 23:22 |
Автор вопроса: ![]() |
Как запретить изменение размеров окна. |
Ответы | Всего ответов: 10 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 293048085 Вопросов: 37 Ответов: 457 |
Профиль | Цитата | #1 | Добавлено: 18.08.04 23:28 |
lol?
BorderStyle = Fixed Single (Dialog\ToolWindow) или, в крайнем случае В Form_Resize Me.Height = ... 'Height формы, см. в параметрах Me.Width = ... 'Тоже |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 298621256 Вопросов: 57 Ответов: 304 |
Профиль | Цитата | #2 | Добавлено: 19.08.04 01:43 |
kodo:
я не согласен - будет очень некрасиво. При попытке изменения размеров форма будет ужасно мерцать и все-таки пытаться менять свои размеры... Tigre: тебе лучше использовать для этого сабклассинг АПИ... на сайте есть прекрасный пример resize (не помню чей он), который демонстрирует остановку ресайза формы на заданных параметрах. и ничего не мерцает ![]() |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 334781088 Вопросов: 108 Ответов: 2822 |
Профиль | Цитата | #3 | Добавлено: 19.08.04 08:53 |
Можно сабклассировать окно и перехватывать WM_SIZE
WM_SIZE The WM_SIZE message is sent to a window after its size has changed. A window receives this message through its WindowProc function. LRESULT CALLBACK WindowProc( HWND hwnd, // handle to window UINT uMsg, // WM_SIZE WPARAM wParam, // resizing flag LPARAM lParam // client area ); Parameters wParam Specifies the type of resizing requested. This parameter can be one of the following values. Value Meaning SIZE_MAXHIDE Message is sent to all pop-up windows when some other window is maximized. SIZE_MAXIMIZED The window has been maximized. SIZE_MAXSHOW Message is sent to all pop-up windows when some other window has been restored to its former size. SIZE_MINIMIZED The window has been minimized. SIZE_RESTORED The window has been resized, but neither the SIZE_MINIMIZED nor SIZE_MAXIMIZED value applies. lParam The low-order word of lParam specifies the new width of the client area. The high-order word of lParam specifies the new height of the client area. Return Values If an application processes this message, it should return zero. В Lparam изменяй поддерживай один из параметров константой (или два, если вообще менять не нужно, но это глупо). Затем передавай управление стандартной процедуре обработки. |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 293048085 Вопросов: 37 Ответов: 457 |
Профиль | Цитата | #4 | Добавлено: 19.08.04 10:08 |
Ребята! Человек первый раз в жизни видит что такое Api а вы ему сразу сабклассинг... Проще быть надо! Ему небось BorderStyle хватило! |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 298621256 Вопросов: 57 Ответов: 304 |
Профиль | Цитата | #5 | Добавлено: 19.08.04 13:12 |
А откуда ты знаешь что он АПИ первый раз видит?..
А даже если и так - пусть учится |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Лидер форума ICQ: 216865379 Вопросов: 106 Ответов: 9979 |
Web-сайт: Профиль | Цитата | #6 | Добавлено: 19.08.04 13:17 |
Правильнее всего перехватывать WM_GETMINMAXINFO и модифицировать структуру, определяющую минимальные и максимальные размеры окна |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 293048085 Вопросов: 37 Ответов: 457 |
Профиль | Цитата | #7 | Добавлено: 19.08.04 23:09 |
>А откуда ты знаешь что он АПИ первый раз видит?..
http://www.vbnet.ru/forum/show.aspx?id=52031 Ответ №3 |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client ICQ: 293048085 Вопросов: 37 Ответов: 457 |
Профиль | Цитата | #8 | Добавлено: 19.08.04 23:10 |
>Правильнее всего перехватывать WM_GETMINMAXINFO и модифицировать структуру, определяющую минимальные и максимальные размеры окна
Обясни плиз, самому интересно... Пригодится в жизни! |
Номер ответа: 9 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 298621256 Вопросов: 57 Ответов: 304 |
Профиль | Цитата | #9 | Добавлено: 19.08.04 23:15 |
То Kodo:
Понял ![]() ![]() Действительно АПИ он видит в первый раз На VBNET есть хороший пример, там как раз WM_GETMINMAXINFO используется. resize называется |
Номер ответа: 10 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 34 Ответов: 63 |
Профиль | Цитата | #10 | Добавлено: 20.08.04 00:35 |
Всем спасибо. Только непонял зачем здесь нужен API. Гараздо проше вариант предложеный KODO с BorderStyle и ничего там не мерцает. |
Страница: 1 |
|