ComboBox - Выровнять на право

Простой пример того как установить выравнивание записей по правому краю в компоненте ComboBox.

Для начала запустим Delphi и создадим новый проект. На форму кидаем один компонент ComboBox с закладки Standard. После чего создайте в нем несколько записей, делается это очень просто выделяем ComboBox находим у него свойство Item жмем по нему два раза, открывается окно записываем в нем какой ни будь текст.

Затем создадим обработчик событий OnCreate на Форме и в нем пропишем следующую строку :
ComboBox1.Style := csOwnerDrawFixed;   

Полный код обработчика событий OnCreate должен выглядеть так:
procedure TForm1.FormCreate(Sender: TObject) ;  
begin   
ComboBox1.Style := csOwnerDrawFixed;   
end;

Далее опять же выделяем ComboBox и создаем на нем обработчик событий OnDrawItem (полный код обработчика представлен ниже)
procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer;  
Rect: TRect; State: TOwnerDrawState) ;  
var   
x: Integer;   
txt: String;   
begin   
with ComboBox1 do   
begin   
Canvas.FillRect(Rect) ;   
txt := Items[Index];   
x := Rect.Right - Canvas.TextWidth(txt) - 4;   
Canvas.TextOut(x, Rect.Top, txt) ;   
end;   
end;

Посмотрите что получилось у меня и допишите не достающие строки.
Вот в принципе и все запускаем проект ... теперь записи выравниваются по правому краю!
Теги:
ComboBox
Добавлено: 03 Апреля 2018 16:01:56 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...