:: MVP ::
|
|
:: RSS ::
|
|
|
Как выровнять текст в TListBox по правому краю?
// ListBox1.Style = lbOwnerDrawFixed или lbOwnerDrawVariable
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
var
l: Integer;
t: String;
begin
with ListBox1 do
begin
Canvas.FillRect( Rect );
t := Items[Index];
l := Rect.Right - Canvas.TextWidth( t ) - 1;
Canvas.TextOut( l, Rect.Top, t );
end;
end;
|
Как отобразить элементы TListBox в несколько колонок?
procedure TForm1.FormCreate(Sender: TObject);
begin
// Свойство TabWidth определяет ширину столбцов в пикселах
ListBox1.TabWidth := 40;
// Добавляя пункты в список, разделяйте столбцы символами '^I', подобно этому:
ListBox1.Items.Add( 'Первый'^I'Второй'^I'Третий' );
ListBox1.Items.Add( 'C1R1'^I'C2R1'^I'C3R1' );
ListBox1.Items.Add( 'C1R2'^I'C2R2'^I'C3R2' );
ListBox1.Items.Add( 'C1R3'^I'C2R3'^I'C3R3' );
ListBox1.Items.Add( 'C1R4'^I'C2R4'^I'C3R4' );
ListBox1.Items.Add( 'C1R5'^I'C2R5'^I'C3R5' );
ListBox1.Items.Add( 'C1R6'^I'C2R6'^I'C3R6' );
ListBox1.Items.Add( 'C1R7'^I'C2R7'^I'C3R7' );
ListBox1.Items.Add( 'C1R8'^I'C2R8'^I'C3R8' );
ListBox1.Items.Add( 'C1R9'^I'C2R9'^I'C3R9' );
end;
|
Как использовать RadioButton в TListBox?
procedure TForm1.FormCreate(Sender: TObject);
begin
ListBox1.Style := lbOwnerDrawVariable;
ListBox1.ItemHeight := 20;
ListBox1.Items.Add( 'Item 1' );
ListBox1.Items.Add( 'Item 2' );
ListBox1.Items.Add( 'Item 3' );
end;
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
var
DrawRect: TRect;
begin
with ListBox1.Canvas do
begin
FillRect( Rect );
DrawRect.Left := Rect.Left + 1;
DrawRect.Right := Rect.Left + 13;
DrawRect.Bottom := Rect.Bottom;
DrawRect.Top := Rect.Top;
if odSelected in State then
DrawFrameControl( Handle, DrawRect, DFC_BUTTON, DFCS_BUTTONRADIO or DFCS_CHECKED )
else
DrawFrameControl( Handle, DrawRect, DFC_BUTTON, DFCS_BUTTONRADIO );
TextOut( 15, Rect.Top + 3, ListBox1.Items[Index] );
end;
end;
|
Как измененить величину табуляции в TListBox?
{Установка одной величины табуляции}
procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Add('1'^I'Иванов'^I'Иван');
ListBox1.Items.Add('2'#9'Терещенко'#9'Илья');
ListBox1.TabWidth := 10;
end;
{Установка одной величины табуляции}
procedure TForm1.Button2Click(Sender: TObject);
const
TabInc: Longint = 45;
begin
ListBox1.TabWidth := 1;
// Свойство TabWidth должно иметь ненулевое значение, только в
// этом случае ListBox будет готов принять это сообщение.
SendMessage(ListBox1.Handle, LB_SETTABSTOPS, 1, LongInt(@TabInc));
ListBox1.Items.Add('1'^I'Иванов'^I'Иван');
ListBox1.Items.Add('2'#9'Терещенко'#9'Илья');
end;
{Установка двух величин табуляции}
procedure TForm1.Button3Click(Sender: TObject);
const
iStops: array[1..2] of Integer = (15, 60);
begin
ListBox1.TabWidth := 1;
// Свойство TabWidth должно иметь ненулевое значение, только в
// этом случае ListBox будет готов принять это сообщение.
SendMessage(ListBox1.Handle, LB_SETTABSTOPS, Length(iStops), LongInt(@iStops));
ListBox1.Items.Add('1'^I'Иванов'^I'Иван');
ListBox1.Items.Add('2'#9'Терещенко'#9'Илья');
end;
|
При использовании материала - ссылка на сайт обязательна
|
|