Главная страница
    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.48 MB
Время: 0.061 c
1-1118301611
alsov
2005-06-09 11:20
2005.06.29
Вывод большого битмапа


11-1101734167
Anton_R
2004-11-29 16:16
2005.06.29
Большой размер до Minimize


14-1117185483
Kolan
2005-05-27 13:18
2005.06.29
Какой смартфон купить?


1-1117797095
San Sanich
2005-06-03 15:11
2005.06.29
Текст разного цвета


4-1114998618
n0name
2005-05-02 05:50
2005.06.29
Зачем нужен линковщик?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский