Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.10;
Скачать: CL | DM;

Вниз

Как добавить BS_FLAT в BitBtn и GroupBox, CheckBox.   Найти похожие ветки 

 
Нулевой ©   (2006-02-07 14:56) [0]

Для Button получилось просто:
procedure TFltButton.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
if FFlat then
  Params.Style := Params.Style or BS_PUSHBUTTON or BS_FLAT
end;

procedure TFltButton.SetFlat(const Value: boolean);
begin
if FFlat <> Value then
begin
  FFlat := Value;
  RecreateWnd;
end
end;

procedure Register;
begin
 RegisterComponents("Samples", [TFltButton]);
end;

Для остальных ни как не могу разобраться, что перехватывать...
Спасибо.


 
Юрий Зотов ©   (2006-02-07 15:39) [1]

А Вы уверены, что у остальных контролов вообще существует плоский стиль? Посмотрите в MSDN, есть ли он.

Если есть, то делаете точно так же. А если нет, то придется рисовать контрол самому.


 
Нулевой ©   (2006-02-07 15:59) [2]

В данном коде работает:
 Btns[4] := CreateWindowEx(0, "button", "BS_GROUPBOX", BS_GROUPBOX or BS_FLAT or
   ws_child or ws_visible, 10, 130, 150, 35, wndMain, 0, hinstance, nil);


 
Юрий Зотов ©   (2006-02-07 16:32) [3]

> Нулевой ©   (07.02.06 15:59) [2]

1. Что такое "класс окна" и "стиль окна"?
2. Как расшифровывается приставка BS?
3. К чему эта приставка относится и к чему она НЕ относится?


 
Нулевой ©   (2006-02-07 16:44) [4]

Крыша едит...
Делаю checkbox получаю groupbox, что за фигня???!!!
type
 TFltCheckBox = class(TCheckBox)
 private
   { Private declarations }
 protected
   { Protected declarations }
   procedure CreateParams(var Params: TCreateParams); override;
 public
   { Public declarations }
 published
   { Published declarations }
 end;

procedure Register;

implementation

procedure TFltCheckBox.CreateParams(var Params: TCreateParams);
begin
 inherited CreateParams(Params);
 Params.Style := Params.Style or BS_CHECKBOX or BS_FLAT
end;

procedure Register;
begin
 RegisterComponents("Samples", [TFltCheckBox]);
end;
Что не так делаю?


 
Нулевой ©   (2006-02-07 16:46) [5]

Хотя получил то что хотел, но как-то страно получил...



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

Текущий архив: 2006.09.10;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.044 c
3-1151502224
antoxa2005
2006-06-28 17:43
2006.09.10
Вопросик. Сколько клиентов можно подк MS SQL 2005 Server Express


15-1155990009
sleept
2006-08-19 16:20
2006.09.10
не понял


2-1156145761
Селезин
2006-08-21 11:36
2006.09.10
Разбиение строки в масив


15-1155565213
PSPF2003
2006-08-14 18:20
2006.09.10
Российский сайт


2-1156158306
deplhi
2006-08-21 15:05
2006.09.10
pointers and dll





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