lasarus_compotents/RXLib/.svn/pristine/98/98b3c55c29bfe931333d3f9c0dac9364ac24b60f.svn-base

107 lines
2.2 KiB
Plaintext

unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, rxdbgrid, rxmemds, RxIniPropStorage, Forms,
Controls, Graphics, Dialogs, StdCtrls, db;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
CheckBox1: TCheckBox;
DataSource1: TDataSource;
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Memo1: TMemo;
RxDBGrid1: TRxDBGrid;
RxIniPropStorage1: TRxIniPropStorage;
RxMemoryData1: TRxMemoryData;
RxMemoryData1CODE: TLongintField;
RxMemoryData1ID: TLongintField;
RxMemoryData1NAME: TStringField;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure CheckBox1Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
procedure RxDBGridInfoBox(Sender: TObject);
public
end;
var
Form1: TForm1;
implementation
uses DBGrids;
{$R *.lfm}
{ TForm1 }
procedure TForm1.FormCreate(Sender: TObject);
var
i: Integer;
begin
RxDBGrid1.Options:=RxDBGrid1.Options + [dgAlwaysShowEditor];
RxMemoryData1.Open;
for i:=1 to 20 do
begin
RxMemoryData1.Append;
RxMemoryData1ID.AsInteger:=i;
RxMemoryData1NAME.AsString:='Line '+IntToStr(I);
if i mod 4 = 0 then
RxMemoryData1CODE.Clear
else
RxMemoryData1CODE.AsInteger:=100 + i * 10;
RxMemoryData1.Post;
end;
RxDBGrid1.CreateToolMenuItem(#0, '-', nil);
RxDBGrid1.CreateToolMenuItem(#0, 'Show info box', @RxDBGridInfoBox);
// RxDBGrid1.DefaultRowHeight:=;
end;
procedure TForm1.RxDBGridInfoBox(Sender: TObject);
begin
ShowMessage('Hello world form RXDBGrid tools menu');
end;
procedure TForm1.CheckBox1Change(Sender: TObject);
begin
Edit1.Enabled:=not CheckBox1.Checked;
try
if CheckBox1.Checked then
RxMemoryData1.Filter:=Edit1.Text;
RxMemoryData1.Filtered:=CheckBox1.Checked;
except
on E:Exception do
Memo1.Lines.Text:=E.Message;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
RxDBGrid1.DefaultRowHeight:=StrToInt(Edit2.Text);
end;
type
THackGrid = class(TRxDBGrid);
procedure TForm1.Button1Click(Sender: TObject);
begin
RxDBGrid1.DefaultRowHeight:=THackGrid(RxDBGrid1).GetDefaultRowHeight;
end;
end.