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

Вниз

Плоский ComboBox   Найти похожие ветки 

 
AlexTregubov   (2005-06-02 17:05) [0]

возможно ли создать сабж, т.е. что-то типа BorderStyle:=bsNone, или Flat:=true

Заранее спасибо.


 
Игорь Шевченко ©   (2005-06-02 17:53) [1]

Самому рисовать. В D6 и выше можно через свойство Bevel управлять, но рисуется он не совсем корректно.


 
-=S.S=- ©   (2005-06-02 18:07) [2]


 ComboBox1.BevelInner := bvNone;
 ComboBox1.BevelKind := bkSoft;
 ComboBox1.BevelOuter := bvSpace;

Авось то что нужно ;)


 
alpet ©   (2005-06-02 18:31) [3]

Смотрится плохо, но вроде работает:

procedure TForm1.Create (Sender: TObject);
var n: Integer;
begin
n := GetWindowLong (CheckBox1.Handle, GWL_STYLE);
SetWindowLong (CheckBox1.Handle, GWL_STYLE, n or bs_flat);
end;


 
AlexTregubov   (2005-06-07 09:32) [4]

Еще вопрос.
Как у ComboBox сделать выравнивание текста и отступы текста слева и справа (что-то вроде
SendMessage(Handle, EM_SETMARGINS,EC_LEFTMARGIN,3);    SendMessage(Handle, EM_SETMARGINS,EC_RIGHTMARGIN,MakeLong(0,3));).


 
GrayFace ©   (2005-06-07 10:25) [5]

1) Я делал компоненту для того, чтобы Edit-ы, ComboBox-ы и т.п. стали плоскими - могу дать. Делается это подменой оконной поцедуры и отрисовкой своей рамочки вручную.

2) Если Style=csDropDown, то
 h:=FindWindowEx(Combobox1.Handle,0,"Edit",nil);
 SendMessage(h, EM_SETMARGINS,EC_LEFTMARGIN,20);


 
AlexTregubov   (2005-06-07 15:49) [6]

За отступы спасибо.
Последний вопрос - как в комбобоксе сделать выравнивание.
Строчки типа
 n := GetWindowLong (h, GWL_STYLE);
 SetWindowLong (h, GWL_STYLE, n or ES_CENTER);
не помогают.


 
GrayFace ©   (2005-06-09 09:55) [7]

Для изменения ES_CENTER надо пересоздать окно эдита. Нормально это сделать у меня не получается. К тому же, для Win98, WinNT 4.0 и т.п. ES_CENTER работает только в многострочных Edit-ах, а с ними нужно дополнительно чуть-чуть повозиться.



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

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

Наверх




Память: 0.48 MB
Время: 0.041 c
14-1121285810
Vudu
2005-07-14 00:16
2005.08.07
Как пользоваться инсталятором?


4-1118137581
A№t0№
2005-06-07 13:46
2005.08.07
Иконка окна


5-1092299241
stud
2004-08-12 12:27
2005.08.07
каким образом выполнить метод компанента?


4-1118325354
Андрей Жук
2005-06-09 17:55
2005.08.07
Какой функцией можно получить параметры памяти процесса


3-1119954270
АМБ
2005-06-28 14:24
2005.08.07
Изменение имени поля