Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Вниз

Изменение BorderStyle   Найти похожие ветки 

 
Grell   (2005-04-29 20:45) [0]

Как изменить свойство BorderStyle формы используя WinAPI?


 
Ученик   (2005-04-29 22:36) [1]

>Grell   (29.04.05 20:45)  

На что ?


 
Marser ©   (2005-04-29 22:37) [2]

См. GetWindowLong, SetWindowLong и константы стиля окна - WS_ и WS_EX_


 
Ученик   (2005-04-29 22:38) [3]

>Grell   (29.04.05 20:45)  
В общем случае

SetWindowLong(Handle, GWL_STYLE, ..)
SetWindowLong(Handle, GWL_EXSTYLE, ..)


 
Grell   (2005-04-29 23:02) [4]

2Ученик На bsNone или bsSingle.


 
Ученик   (2005-04-29 23:10) [5]

>Grell   (29.04.05 23:02) [4]
SetWindowLong(Handle, GWL_STYLE, GetWindowLong(Handle, GWL_STYLE) and not WS_CAPTION)


 
Ученик   (2005-04-29 23:21) [6]

>Ученик   (29.04.05 23:10) [5]
Возможно, не сработает

так будет bsNone
 SetWindowLong(Handle, GWL_STYLE, 0);
 SetWindowLong(Handle, GWL_EXSTYLE, 0);

bsSinle в Win32 какой-то странный (отличный от Win16)


 
Grell   (2005-04-29 23:30) [7]


> Возможно, не сработает

Да, не пашет :(
А
SetWindowLong(Handle, GWL_STYLE, 0);
SetWindowLong(Handle, GWL_EXSTYLE, 0);
работает отлично, спасибо!


 
Игорь Шевченко ©   (2005-04-30 01:32) [8]


> SetWindowLong(Handle, GWL_STYLE, 0);


Я бы все-так рекомендовал SetWindowLong(Handle, GWL_STYLE, WS_VISBLE or WS_CLIPSIBLINGS or WS_CLIPCHILDREN)

А стиль bsSingle устанавливается следующей комбинацией:

 SetWindowLong(Handle, GWL_STYLE, WS_VISIBLE or WS_CLIPCHILDREN or
   WS_CLIPSIBLINGS or WS_CAPTION);
 SetWindowPos (Handle, 0, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE or
   SWP_NOZORDER or SWP_DRAWFRAME);


SetWindowPos такого вида рекомендуется вызывать после любых изменений, связанных с размерами неклиентских областей окна.


 
Grell   (2005-04-30 10:59) [9]


> А стиль bsSingle устанавливается следующей комбинацией:
>
>  SetWindowLong(Handle, GWL_STYLE, WS_VISIBLE or WS_CLIPCHILDREN
> or
>    WS_CLIPSIBLINGS or WS_CAPTION);
>  SetWindowPos (Handle, 0, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE
> or
>    SWP_NOZORDER or SWP_DRAWFRAME);

Работает но почемуто пропадают иконки мннмизации и тд..
> SetWindowPos такого вида рекомендуется вызывать после любых
> изменений, связанных с размерами неклиентских областей окна.

Спасибо, учту!


 
Игорь Шевченко ©   (2005-04-30 19:54) [10]


> Работает но почемуто пропадают иконки мннмизации и тд..


Добавить в стили WS_MINIMIZEBOX or WS_MAXIMIZEBOX


 
Grell ©   (2005-04-30 21:38) [11]

SetWindowLong(Handle, GWL_STYLE, WS_VISIBLE or WS_CLIPCHILDREN or
  WS_CLIPSIBLINGS or WS_CAPTION or WS_MAXIMIZEBOX or WS_MINIMIZEBOX);

Все равно не пашет =(


 
Игорь Шевченко ©   (2005-04-30 22:39) [12]

SetWindowLong(Handle, GWL_STYLE, WS_VISIBLE or WS_CLIPCHILDREN or WS_CLIPSIBLINGS or WS_CAPTION or WS_MAXIMIZEBOX or WS_MINIMIZEBOX or WS_SYSMENU);


 
Agent13 ©   (2005-05-01 21:21) [13]

Может для того, чтобы в подобных ситуациях не гадать, что ещё из WS_...  забыли написать, лучше делать типо того:
SetWindowLong(Handle, GWL_STYLE, GetWindowLong(Handle, GWL_Style) or WS_CLIPCHILDREN or WS_CLIPSIBLINGS);?


 
mgcr ©   (2005-05-01 22:04) [14]

Agent13 ©   (01.05.05 21:21) [13]

WS_CLIPххх - они для формы уже есть.



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.046 c
11-1100528489
Владимир Кладов
2004-11-15 17:21
2005.06.29
Версия 2.00 готова


6-1111941256
Vitaly Gavrilov
2005-03-27 20:34
2005.06.29
О учете времени в интернет


9-1107804770
Micke
2005-02-07 22:32
2005.06.29
2D движок. Третья демка. Очередная :)


3-1116567937
yk
2005-05-20 09:45
2005.06.29
Выборка с учётом не существования записей


1-1118068965
VadimX
2005-06-06 18:42
2005.06.29
Визуальный объект 2 в одном.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский