unit SplitF;
interface
uses
SysUtils, Windows, Messages, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls;
type
TForm1 = class(TForm)
ListBox1: TListBox;
ListBox2: TListBox;
ListBox3: TListBox;
FontDialog1: TFontDialog;
HeaderControl1: THeaderControl;
procedure ListBoxDblClick(Sender: TObject);
procedure HeaderControl1SectionResize(HeaderControl: THeaderControl;
Section: THeaderSection);
procedure HeaderControl1SectionClick(HeaderControl: THeaderControl;
Section: THeaderSection);
procedure HeaderControl1SectionDrag(Sender: TObject; FromSection,
ToSection: THeaderSection; var AllowDrag: Boolean);
procedure Form1Resize(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
procedure TForm1.ListBoxDblClick(Sender: TObject);
begin
with Sender as TListbox do
begin
FontDialog1.Font := Font;
if FontDialog1.Execute then
Font := FontDialog1.Font;
end;
end;
procedure TForm1.HeaderControl1SectionResize(HeaderControl: THeaderControl;
Section: THeaderSection);
var
List: TListBox;
begin
List := FindComponent ('ListBox' + IntToStr (Section.ImageIndex)) as TListBox;
List.Width := Section.Width;
end;
procedure TForm1.HeaderControl1SectionClick(HeaderControl: THeaderControl;
Section: THeaderSection);
var
List: TListBox;
begin
List := FindComponent ('ListBox' + IntToStr (Section.ImageIndex)) as TListBox;
List.Sorted := not List.Sorted;
end;
procedure TForm1.HeaderControl1SectionDrag(Sender: TObject; FromSection,
ToSection: THeaderSection; var AllowDrag: Boolean);
var
List: TListBox;
begin
List := FindComponent ('ListBox' + IntToStr (FromSection.ImageIndex)) as TListBox;
List.Left := ToSection.Left;
List.Width := ToSection.Width;
List := FindComponent ('ListBox' + IntToStr (ToSection.ImageIndex)) as TListBox;
List.Left := FromSection.Left;
List.Width :=fromSection.Width;
end;
procedure TForm1.Form1Resize(Sender: TObject);
var
I: Integer;
List: TListBox;
begin
for I := 0 to 2 do
begin
List := FindComponent ('ListBox' + IntToStr (
HeaderControl1.Sections[I].ImageIndex)) as TListBox;
List.Left := HeaderControl1.Sections[I].Left;
List.Width := HeaderControl1.Sections[I].Width;
end;
end;
end.
|