📄 dbpicker.pas
字号:
unit DBPicker;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, BaseForm, StdCtrls, Buttons, DB, ADODB, Grids, DBGrids, ExtCtrls;
type
TfrmDBPicker = class(TfrmBaseForm)
Panel1: TPanel;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
ADOQuery1: TADOQuery;
Label1: TLabel;
Edit1: TEdit;
btnOK: TBitBtn;
procedure btnOKClick(Sender: TObject);
procedure DBGrid1DblClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure ADOQuery1AfterOpen(DataSet: TDataSet);
procedure Edit1Change(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmDBPicker: TfrmDBPicker;
implementation
{$R *.dfm}
procedure TfrmDBPicker.btnOKClick(Sender: TObject);
begin
inherited;
ModalResult:=mrok;
end;
procedure TfrmDBPicker.DBGrid1DblClick(Sender: TObject);
begin
inherited;
btnOK.OnClick(nil);
end;
procedure TfrmDBPicker.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
if DataSource1.State in [dsInsert,dsEdit] then
try
ADOQuery1.Post;
except
MessageBox(Handle,'最后修改保存失败!','操作失败',mb_okcancel+mb_iconError);
end;
//inherited;
end;
procedure TfrmDBPicker.ADOQuery1AfterOpen(DataSet: TDataSet);
begin
inherited;
if not ADOQuery1.isempty then btnOK.Enabled:=True;
end;
procedure TfrmDBPicker.Edit1Change(Sender: TObject);
begin
inherited;
if Trim(Edit1.Text)='' then
ADOQuery1.Filtered:=False
else
begin
ADOQuery1.Filtered:=False;
ADOQuery1.Filter:=DBGrid1.Columns[0].FieldName+'>='''+Trim(Edit1.Text)+'''';
ADOQuery1.Filtered:=True;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -