⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 teacherfindformunit.pas

📁 DELPHI计算机科学系教务管理系统,带论文设计,不错的参考
💻 PAS
字号:
unit TeacherFindFormUnit;

interface

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

type
  TTeacherFindForm = class(TForm)
    Panel1: TPanel;
    btnFind: TBitBtn;
    BitBtn7: TBitBtn;
    Label1: TLabel;
    edttno: TEdit;
    cbxbool2: TComboBox;
    Label3: TLabel;
    cbxpost2: TComboBox;
    Label4: TLabel;
    edttname2: TEdit;
    Label2: TLabel;
    Panel2: TPanel;
    DBGrid1: TDBGrid;
    ADOQuery1: TADOQuery;
    DataSource1: TDataSource;
    procedure BitBtn7Click(Sender: TObject);
    procedure btnFindClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    procedure FormCreate(Sender: TObject);
    procedure ADOQuery1AfterScroll(DataSet: TDataSet);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    procedure GridMouseWheel(Sender: TObject; Shift: TShiftState;
    WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);  
    { Private declarations }
  public
    { Public declarations }
  end;
   TControlAccess = class(TControl);
var
  TeacherFindForm: TTeacherFindForm;

implementation

uses DataModul, public_unit;

{$R *.dfm}

procedure TTeacherFindForm.BitBtn7Click(Sender: TObject);
begin
  close;
end;

procedure TTeacherFindForm.btnFindClick(Sender: TObject);
var
  sqlStr: string;
begin
  sqlStr :=' select * from TTeacher  WHERE 1=1';

  if edttname2.Text <> '' then
    sqlStr := sqlstr+ ' AND tname like ''%' + edttname2.Text + '%''';

  if edttno.Text <> '' then
    sqlStr := sqlstr+ ' AND tno ='+ QuotedStr(edttno.Text);

  if cbxpost2.ItemIndex <> 0 then
    sqlStr := sqlStr + ' AND tpost=' + QuotedStr(cbxpost2.Text);

  if cbxbool2.ItemIndex <> 0 then
    sqlStr := sqlStr + ' AND tbool=' + QuotedStr(cbxbool2.Text);

   with adoquery1 do
   begin
     Sql.Text := sqlStr;
     Open;
   end;
 edttname2.Text:='';
 edttno.Text:='';
 cbxpost2.ItemIndex:=0;
 cbxbool2.ItemIndex:=0;


end;

procedure TTeacherFindForm.FormShow(Sender: TObject);
begin
  adoquery1.Open;
  GetFieldsToCombox('002', cbxpost2, DM.ADOConnection1); //职务  
end;

procedure TTeacherFindForm.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
 if gdSelected in State then Exit;  //隔行改变网格背景色:
  if adoquery1.RecNo mod 2 = 0 then
    (Sender as TDBGrid).Canvas.Brush.Color := clinfobk //定义背景颜色
  else
    (Sender as TDBGrid).Canvas.Brush.Color := RGB(191, 255, 223);  //定义背景颜色

  //定义网格线的颜色:
  DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
  with (Sender as TDBGrid).Canvas do //画 cell 的边框
  begin
    Pen.Color := $00ff0000; //定义画笔颜色(蓝色)
    MoveTo(Rect.Left, Rect.Bottom); //画笔定位
    LineTo(Rect.Right, Rect.Bottom); //画蓝色的横线
    Pen.Color := clbtnface; //定义画笔颜色(兰色)
    MoveTo(Rect.Right, Rect.Top); //画笔定位
    LineTo(Rect.Right, Rect.Bottom); //画绿色
  end;
end;

procedure TTeacherFindForm.FormCreate(Sender: TObject);
begin
  TControlAccess(DBGrid1).OnMouseWheel := GridMouseWheel;
end;

procedure TTeacherFindForm.GridMouseWheel(Sender: TObject;
  Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint;
  var Handled: Boolean);
begin
  TDBGrid(Sender).DataSource.DataSet.MoveBy(-WheelDelta div WHEEL_DELTA);
  Handled := True;
end;

procedure TTeacherFindForm.ADOQuery1AfterScroll(DataSet: TDataSet);
begin
    with adoquery1 do
  begin
    edttno.Text := fieldByName('tno').AsString;
    edttname2.Text := fieldByName('tname').AsString;
    cbxpost2.ItemIndex := cbxpost2.Items.IndexOf(fieldByname('tpost').AsString);
    cbxbool2.ItemIndex := cbxbool2.Items.IndexOf(fieldByname('tbool').AsString);
  end;
end;

procedure TTeacherFindForm.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  adoquery1.Close;
  Action := caFree;
  TeacherFindForm := nil;
end;

end.

⌨️ 快捷键说明

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