Главная страница
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.094 c
14-1121273671
Е-клмн
2005-07-13 20:54
2005.08.07
Я - идиот. Вы? (Да Нет)


1-1121694656
Mx
2005-07-18 17:50
2005.08.07
Сохранение указателей на элементы дин. массива после расширения


1-1121867379
Dust
2005-07-20 17:49
2005.08.07
Опять вопрос про качественный код:


1-1121799778
Valera
2005-07-19 23:02
2005.08.07
JvPlayList (TListBox) прорисовать время как в WMP


10-1098692190
WebErr
2004-10-25 12:16
2005.08.07
В Excel.Application NumericFormat у Range не устанавливается!!!