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

📄 main.pas

📁 用delphi开发的生活常识集锦
💻 PAS
字号:
unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, ComCtrls, ExtCtrls, jpeg, StdCtrls, LbButton;

type
  TForm1 = class(TForm)
    ADOCN: TADOConnection;
    ADODataSet_life: TADODataSet;
    Image1: TImage;
    Panel1: TPanel;
    TreeView1: TTreeView;
    ADODataSet: TADODataSet;
    Memo1: TMemo;
    Image2: TImage;
    Image3: TImage;
    Image4: TImage;
    Label1: TLabel;
    Label2: TLabel;
    Image5: TImage;
    Image6: TImage;
    Label3: TLabel;
    Image7: TImage;
    Label4: TLabel;
    Panel2: TPanel;
    Label6: TLabel;
    Edit1: TEdit;
    LbButton3: TLbButton;
    Memo3: TMemo;
    Panel3: TPanel;
    LbButton1: TLbButton;
    Panel4: TPanel;
    Label5: TLabel;
    Edit2: TEdit;
    Label7: TLabel;
    Edit3: TEdit;
    Label8: TLabel;
    Edit4: TEdit;
    ComboBox1: TComboBox;
    ListBox1: TListBox;
    Memo2: TMemo;
    LbButton4: TLbButton;
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure TreeView1Click(Sender: TObject);
    procedure Image2MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image3MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image4MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure ComboBox1Change(Sender: TObject);
    procedure Image5MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image6MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image7MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure LbButton3Click(Sender: TObject);
    procedure LbButton1Click(Sender: TObject);
    procedure ListBox1Click(Sender: TObject);
    procedure LbButton4Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure Image2MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image3MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image4MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image5MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image6MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Image7MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure TreeView1Change(Sender: TObject; Node: TTreeNode);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
//  OldX,OldY:integer; //定义全局变量
  tmpmemo:string;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  if ADOCN.ConnectionString<>'' then
    begin
      ADOCN.Connected:=False;
      ADOCN.ConnectionString:='';
    end;
  ADOCN.ConnectionString := 'Data Source=' + ExtractFilePath(Application.ExeName) + 'life.Mdb';
  ADOCN.Connected:=True;
end;

procedure TForm1.FormShow(Sender: TObject);
var
  aNode:TTreeNode;
  i,j:integer;
  kind,tmpkind:string;
begin
  SendMessage(ListBox1.Handle,LB_SetHorizontalExtent,5000, longint(0));
  ADODataSet_life.Close;
  ADODataSet_life.CommandText:='select distinct subject from 01 ';
  ADODataSet_life.Open;
  ADODataSet_life.First;
  for i:=0 to ADODataSet_life.RecordCount-1 do
  begin
    kind:=ADODataSet_life.FieldByName('subject').AsString;
    aNode := TreeView1.Items.AddChild(nil,kind) ;

    ADODataSet.Close;
    ADODataSet.CommandText:='select name from 01 where subject=''' + kind + '''';
    ADODataSet.Open;
    ADODataSet.First;
    for j:=0 to ADODataSet.RecordCount-1 do
    begin
      tmpkind:=ADODataSet.FieldByName('name').AsString;
      TreeView1.Items.AddChild(aNode,tmpkind);
      ADODataSet.Next;
    end;
     ADODataSet_life.Next;
  end;
end;

procedure TForm1.TreeView1Click(Sender: TObject);
var
tree1,tree2,heat:string;
i:integer;
begin
  tree1:=TreeView1.Selected.Text;
  ADODataSet.Close;
  ADODataSet.CommandText:='select treat from 01 where name=''' + tree1 + '''';
  ADODataSet.Open;
  ADODataSet.First;
  tree2:=ADODataSet.FieldByName('treat').AsString;
  Memo1.Clear;
  Memo1.Lines.Add(tree2);
  Memo1.SelStart := 0;
  Memo1.SelLength := 0;
end;

procedure TForm1.Image2MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image2.Top:=7;
  Image2.Left:=456;
  Application.Minimize;
end;

procedure TForm1.Image3MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image3.Top:=7;
  Image3.Left:=479;
  Application.Terminate;
end;

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  ReleaseCapture;
  Perform(WM_SYSCOMMAND, $F012, 0);
end;

procedure TForm1.Image4MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image4.Top:=69;
  Image4.Left:=65;
  Panel1.Visible:=true;
  Panel2.Visible:=false;
  Panel3.Visible:=false;
  Panel4.Visible:=false;
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
var
tmp1:string;
i:integer;
begin
  if Length(ListBox1.Items.Text)>Listbox1.Width then
     SendMessage(ListBox1.Handle,LB_SetHorizontalExtent,5000, longint(0));
  ListBox1.Clear;
  tmp1:=ComboBox1.Text;
  ADODataSet.Close;
  ADODataSet.CommandText:='select name from 01 where subject=''' + tmp1 + '''';
  ADODataSet.Open;
  ADODataSet.First;
  for i:=0 to ADODataSet.RecordCount-1 do
  begin
    ListBox1.Items.Add(ADODataSet.FieldByName('name').AsString);
    ADODataSet.Next;
  end;
end;

procedure TForm1.Image5MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image5.Top:=69;
  Image5.Left:=183;
  Panel2.Visible:=true;
  Panel1.Visible:=false;
  Panel3.Visible:=false;
  Panel4.Visible:=false;
end;

procedure TForm1.Image6MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image6.Top:=69;
  Image6.Left:=302;
  Panel3.Visible:=true;
  Panel2.Visible:=false;
  Panel1.Visible:=false;
  Panel4.Visible:=false;
end;

procedure TForm1.Image7MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
  var
  i:integer;
begin
  Image7.Top:=69;
  Image7.Left:=421;
  Panel4.Visible:=true;
  Panel2.Visible:=false;
  Panel3.Visible:=false;
  Panel1.Visible:=false;
  ComboBox1.Clear;
  ADODataSet.Close;
  ADODataSet.CommandText:='select distinct subject from 01 ';
  ADODataSet.Open;
  ADODataSet.First;
  for i:=0 to ADODataSet.RecordCount-1 do
  begin
    ComboBox1.Items.Add(ADODataSet.FieldByName('subject').AsString);
    ADODataSet.Next;
  end;
  ComboBox1.ItemIndex:=-1;
end;

procedure TForm1.LbButton3Click(Sender: TObject);
var
tmp1,tmp2,tmp3,tmp4:string;
begin
  tmp1:=Edit1.Text;
  ADODataSet.Close;
  ADODataSet.CommandText:='select * from 01 where name like ''%'+tmp1+'%''';
  ADODataSet.Open;
  ADODataSet.First;
  tmp2:=ADODataSet.FieldByName('subject').AsString;
  tmp3:=ADODataSet.FieldByName('treat').AsString;
  tmp4:=ADODataSet.FieldByName('name').AsString;
  Memo3.Clear;
  Memo3.Lines.Add('科目:'+tmp2);
  Memo3.Lines.Add('');
  Memo3.Lines.Add('症状:'+tmp4);
  Memo3.Lines.Add('');
  Memo3.Lines.Add(tmp3);
  Memo3.SelStart := 0;
  Memo3.SelLength := 0;
end;

procedure TForm1.LbButton1Click(Sender: TObject);
var
tmp1,tmp2:string;
i:integer;
begin
  tmp1:=Edit3.Text;
  ADODataSet.Close;
  ADODataSet.CommandText:='select * from 01';
  ADODataSet.Open;
  ADODataSet.First;
  for i:=0 to ADODataSet.RecordCount-1 do
  begin
    tmp2:=ADODataSet.FieldByName('name').AsString;
    if tmp1=tmp2 then
    begin
      MessageDlg('这种症状已经有了哦!', mtError,[mbOk], 0);
      exit;
    end;
    ADODataSet.Next;
  end;
  ADODataSet.Insert;
  ADODataSet.FieldByName('name').AsString:=Edit3.Text;
  ADODataSet.FieldByName('subject').AsString:=Edit2.Text;
  ADODataSet.FieldByName('treat').AsString:=Edit4.Text;
  ADODataSet.Post;
  TreeView1.Items.Clear; //和下一句是难点
  Form1.FormShow(Form1); //调用Form1的Onshow事件
  MessageDlg('恭喜恭喜,增加成功!', mtInformation,[mbOk], 0);
end;

procedure TForm1.ListBox1Click(Sender: TObject);
var
tmp1:string;
begin
  tmp1:=listbox1.Items.Strings[listbox1.ItemIndex];
  ADODataSet.Close;
  ADODataSet.CommandText:='select * from 01 where name=''' + tmp1 + '''';
  ADODataSet.Open;
  ADODataSet.First;
  Memo2.Clear;
  Memo2.Lines.Add(ADODataSet.FieldByName('treat').AsString);
  tmpmemo:=ADODataSet.FieldByName('treat').AsString ;
end;

procedure TForm1.LbButton4Click(Sender: TObject);
var
tmp1:string;
begin
  ADODataSet.Close;
  ADODataSet.CommandText:='select * from 01 where treat=''' + tmpmemo + '''';
  ADODataSet.Open;
  ADODataSet.First;
  ADODataSet.Edit;
  ADODataSet.FieldByName('treat').AsString:=Memo2.Lines.Text;
  ADODataSet.Post;
  MessageDlg('恭喜恭喜,增加成功!', mtInformation,[mbOk], 0);
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then LbButton3.Click;
end;

procedure TForm1.Image2MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image2.Top:=8;
  Image2.Left:=455;
end;

procedure TForm1.Image3MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image3.Top:=8;
  Image3.Left:=478;
end;

procedure TForm1.Image4MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image4.Top:=70;
  Image4.Left:=64;
end;

procedure TForm1.Image5MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image5.Top:=70;
  Image5.Left:=182;
end;

procedure TForm1.Image6MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image6.Top:=70;
  Image6.Left:=301;
end;

procedure TForm1.Image7MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image7.Top:=70;
  Image7.Left:=420;
end;

procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
  TreeView1click(self);
end;

end.

⌨️ 快捷键说明

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