takequeryunit.pas

来自「是一个Delphi的教材管理系统,内容很全面详细」· PAS 代码 · 共 120 行

PAS
120
字号
unit TakeQueryUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, Buttons, Grids, DBGrids, ADODB;

type
  TfrmTakeQuery = class(TForm)
    GroupBox1: TGroupBox;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    GroupBox2: TGroupBox;
    Label1: TLabel;
    ComboBox1: TComboBox;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    procedure RadioButton1Click(Sender: TObject);
    procedure RadioButton2Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmTakeQuery: TfrmTakeQuery;
  ds:TADODataSet; // Classes,Departments
implementation

uses DataModuleUnit;

{$R *.dfm}
//初始化
procedure ini();
begin
   frmTakeQuery.ComboBox1.Clear;
   frmTakeQuery.DBGrid1.DataSource:=nil;
   DS.Close;
end;
 //初始化班级列表
procedure TfrmTakeQuery.RadioButton1Click(Sender: TObject);
var
  i:integer;
begin
   ini;
      
   DS.CommandText:='select ClassName from classes';
   DS.Active:=true;
   for i:=0 to DS.RecordCount-1 do
   begin
     comboBox1.Items.Add(Ds.Fields[0].Value);
     ds.Next;
   end;
   DS.Close;

   label1.Caption:='选择查询班级名';
   Combobox1.Enabled:=true;
end;
 //初始化院系名
procedure TfrmTakeQuery.RadioButton2Click(Sender: TObject);
var
  i:integer;
begin
   ini;
   
   DS.CommandText:='select DepartmentName from Departments';
   DS.Active:=true;
   for i:=0 to DS.RecordCount-1 do
   begin
     comboBox1.Items.Add(Ds.Fields[0].Value);
     ds.Next;
   end;
   DS.Close;
   
   label1.Caption:='选择查院系名';
   Combobox1.Enabled:=true;   
end;

procedure TfrmTakeQuery.BitBtn1Click(Sender: TObject);
begin
  close;
end;

procedure TfrmTakeQuery.FormCreate(Sender: TObject);
begin
  DS:=TADODataSet.Create(nil);
  DS.Connection:=frmDataModule.Connection;
  DS.CommandType:=cmdText;
end;
 //执行查询
procedure TfrmTakeQuery.BitBtn2Click(Sender: TObject);
begin
Datasource1.DataSet:=DS;
DBGrid1.DataSource:=DataSource1;
if combobox1.Text<>'' then
begin
  with DS do
  begin
    Close;
    //Parameters.Clear;
    //Parameters.CreateParameter('@V',ftstring,pdinput,20,combobox1.Text);

    //CommandText:='select * from booksHistory where whoTake=:V';
    CommandText:='select * from booksHistory where whoTake='+quotedstr(combobox1.Text);
    Active:=true;
  end;
end
else
  Application.MessageBox('请选择要查询的内容!','出错提示',mb_ok);
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?