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

📄 subject.pas

📁 毕业论文选题系统,用Delphi编的,希望对大家有帮助
💻 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 + -