📄 subject.pas
字号:
unit subject;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBCtrls, StdCtrls, Grids, DBGrids, ComCtrls, DB, DBTables, Mask,
Menus, ADODB, ImgList,shellapi,jpeg;
type
Tsubject1 = class(TForm)
PageControl1: TPageControl;
DataSource1: TDataSource;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
DBText2: TDBText;
GroupBox1: TGroupBox;
Button4: TButton;
Label14: TLabel;
GroupBox2: TGroupBox;
Label26: TLabel;
Label27: TLabel;
Label28: TLabel;
Label29: TLabel;
Label30: TLabel;
Label31: TLabel;
Label33: TLabel;
Label3: TLabel;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
ImageList1: TImageList;
SaveDialog1: TSaveDialog;
OpenDialog1: TOpenDialog;
GroupBox3: TGroupBox;
BtnAdd: TButton;
BtnDelete: TButton;
BtnEdit: TButton;
ComboBox1: TComboBox;
Edit1: TEdit;
GroupBox4: TGroupBox;
GroupBox5: TGroupBox;
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
Button1: TButton;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
Button2: TButton;
Button3: TButton;
Label4: TLabel;
Label5: TLabel;
GroupBox6: TGroupBox;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
Label6: TLabel;
DBEdit8: TDBEdit;
procedure BtnAddClick(Sender: TObject);
procedure BtnDeleteClick(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure BtnEditClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure DBGrid1DblClick(Sender: TObject);
procedure Button1Click(Sender: TObject);
(*procedure Button2Click(Sender: TObject); *)
procedure N6Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure filldata;
procedure search;
procedure displayallrecorders;
end;
var
subject1: Tsubject1;
implementation
uses moudle;//数据模块
{$R *.dfm}
//自定义过程search在数据库中搜寻指定条件的数据
procedure tsubject1.search;
var
searchfield:string;
searchvalue:string;
begin
searchfield:=combobox1.text; //将combobox值赋给Searchfield
searchvalue:='%'+edit1.text+'%'; //将Edit的值赋给searchField
with MyDataModule.ADOQuerySUB do
begin
close; //先关闭数据模块中的ADOQuerySUB
sql.Clear; //清空其中的值
sql.Add('select * from course where '+ searchfield +' like ''%'+searchvalue + '%''');
MyDataModule.ADOQuerySUB.Open; //打开数据模块
end;
end;
//将从数据模块中取得的数据库表的字段名填入combobox中
procedure tsubject1.filldata;
var
icount:integer;
begin
if MyDataModule.ADOQuerySUB.active=false then
MyDataModule.ADOQuerySUB.Active:=true;
combobox1.items.clear; //清空combobox中items的值
for icount:=0 to MyDataModule.ADOQuerySUB.Fields.Count-1 do
begin
combobox1.items.add(MyDataModule.ADOQuerySUB.Fields[icount].FieldName);
//加入字段名
end;
combobox1.itemindex:=0;
end;
procedure tsubject1.displayallrecorders;
begin
with MyDataModule.ADOQuerySUB do
begin
close;
sql.Clear;
sql.Add('select * from course order by course.cno');
open;
end;
end;
procedure Tsubject1.BtnAddClick(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Append;
end;
procedure Tsubject1.BtnDeleteClick(Sender: TObject);
var
s:integer;
begin
if MessageDlg('你确信要删除记录?',mtwarning,[mbok,mbcancel],0)=mrok then
begin
with mydatamodule.ADOQueryg do
begin
close;
sql.Clear;
s:=strtoint(dbedit1.Text);
sql.Add('delete from xuanti where xuanti.cno like "%'+inttostr(s)+'%"');
ExecSQL ;
end;
MyDataModule.ADOQuerySUB.Delete;
end;
end;
procedure Tsubject1.Button5Click(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.First;
end;
procedure Tsubject1.BtnEditClick(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Edit;
end;
(********************数据查询处理**********************************)
procedure Tsubject1.FormCreate(Sender: TObject);
begin
filldata; //调用filldata过程
label1.Caption:=inttostr(MyDataModule.ADOQuerySUB.RecordCount);
end;
procedure Tsubject1.Button4Click(Sender: TObject);
begin
search;
label2.Caption:=inttostr(MyDataModule.ADOQuerySUB.RecordCount);
end;
procedure Tsubject1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
button4.Click; //按Enter键即执行搜索
end;
//(* 双击DBGrid1返回数据编辑状态 *)
procedure Tsubject1.DBGrid1DblClick(Sender: TObject);
begin
pagecontrol1.ActivePageIndex:=0;
end;
procedure Tsubject1.Button1Click(Sender: TObject);
begin
displayallrecorders; //调用displayallrecorders过程
end;
(* 菜单处理 *)
procedure Tsubject1.N6Click(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Append;
end;
procedure Tsubject1.Button2Click(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Post;
end;
procedure Tsubject1.N2Click(Sender: TObject);
begin
PageControl1.ActivePageIndex:=0;
end;
procedure Tsubject1.N3Click(Sender: TObject);
begin
PageControl1.ActivePageIndex:=1;
end;
procedure Tsubject1.N4Click(Sender: TObject);
begin
Application.Terminate; //退出系统
end;
procedure Tsubject1.Button3Click(Sender: TObject);
begin
Application.Terminate;
end;
procedure Tsubject1.N7Click(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Delete;
end;
procedure Tsubject1.N8Click(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Edit;
end;
procedure Tsubject1.N9Click(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Post;
end;
procedure Tsubject1.N10Click(Sender: TObject);
begin
displayallrecorders;
end;
procedure Tsubject1.Button6Click(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Prior;
end;
procedure Tsubject1.Button7Click(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Next;
end;
procedure Tsubject1.Button8Click(Sender: TObject);
begin
MyDataModule.ADOQuerySUB.Last;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -