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

Вниз

Правое выравнивание текста в компоненте Combobox   Найти похожие ветки 

 
Sw   (2009-05-19 09:15) [0]

необходимо установить правое выравнивание текста в компоненте Combobox  при значении св-ва Style=csSimple Помогите, пожалуйста.


 
{RASkov} ©   (2009-05-19 10:20) [1]

> [0] Sw   (19.05.09 09:15)

procedure TMyRightComboBox.CreateParams(var Params: TCreateParams);
begin
 inherited;
 Params.ExStyle := Params.ExStyle or WS_EX_RIGHT;
end;


 
Sw   (2009-05-19 10:44) [2]

Спасибо большое, работает. А можно ли так, чтобы только текст выравнивался по правому краю? Дело в том, что в коде я меняю свойство Style на csDropDownList и тогда стрелка выбора combobox"a находится слева.


 
Sw   (2009-05-19 10:49) [3]

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


 
Игорь ©   (2009-05-19 11:16) [4]


> Sw   (19.05.09 10:49) [3]


Это уже в OnDrawItem примерно так


ComboBox1.Style:= csOwnerDrawVariable;

...

var
 ARect: TRect;
begin
 if (odSelected in State) then
 begin
   ComboBox1.Canvas.Brush.Color:= clHighlight;
   ComboBox1.Canvas.Pen.Color:= clHighlight;
   ComboBox1.Canvas.Rectangle(Rect.Left, Rect.Top, Rect.Right, Rect.Bottom);
 end
 else
 begin
   ComboBox1.Canvas.Brush.Color:= clWhite;
   ComboBox1.Canvas.Pen.Color:= clWhite;
   ComboBox1.Canvas.Rectangle(Rect.Left, Rect.Top, Rect.Right, Rect.Bottom);
 end;

 ARect:= Classes.Rect(Rect.Left, Rect.Top + 2, Rect.Right - 3, Rect.Bottom);
 DrawText(ComboBox1.Canvas.Handle, PChar(ComboBox1.Items[Index]), Length(ComboBox1.Items[Index]), ARect, DT_RIGHT);


 
Sw   (2009-05-19 11:28) [5]

извините, но мне не нужен csOwnerDrawVariable, а нужны только csSimple и csDropDownList . с OnDrawItem  не получится.


 
Sw   (2009-05-19 11:58) [6]

ай...наверно...так пойдет

procedure TCmbBoxRightText.CreateParams(var Params: TCreateParams);
begin
inherited;
if Style=csSimple then
 Params.ExStyle := Params.ExStyle or WS_EX_RIGHT;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.006 c
10-1132239448
George_Debug
2005-11-17 17:57
2009.07.12
Как убить объект из TaskManager a ?


2-1242731624
torcik
2009-05-19 15:13
2009.07.12
Рамер шрифта в width и height


2-1242982981
dort12
2009-05-22 13:03
2009.07.12
Проблема с прекреплением attachment


4-1212488971
KygECHuK
2008-06-03 14:29
2009.07.12
Hmodule по HWND


2-1242827993
evgenij
2009-05-20 17:59
2009.07.12
Даные изменились с последнего времени