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

📄 frmhuajia.pas

📁 医院门诊管理系统:它是由任天华完全自主开发的医院数据库管理系统
💻 PAS
字号:
unit FrmHuajia;

interface

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

type
  TFormHuajia = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Label3: TLabel;
    Edit2: TEdit;
    Label4: TLabel;
    ComboBox1: TComboBox;
    Label5: TLabel;
    ComboBox2: TComboBox;
    Label6: TLabel;
    Edit3: TEdit;
    Button1: TButton;
    Button2: TButton;
    DBGrid2: TDBGrid;
    StringGrid1: TStringGrid;
    ComboBox3: TComboBox;
    Edit4: TEdit;
    Label7: TLabel;
    Label8: TLabel;
    Edit5: TEdit;
    Timer1: TTimer;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Timer2: TTimer;
    Button6: TButton;
    Button7: TButton;
    procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
    procedure StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
      Rect: TRect; State: TGridDrawState);
    procedure StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
      var CanSelect: Boolean);
    procedure StringGrid1Click(Sender: TObject);
    procedure StringGrid1KeyPress(Sender: TObject; var Key: Char);
    procedure ComboBox3Change(Sender: TObject);
    procedure ComboBox3CloseUp(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
    procedure Edit4Change(Sender: TObject);
    procedure Button6Click(Sender: TObject);
    procedure Button7Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FormHuajia: TFormHuajia;
  i,k,j,h,u,bb:integer;
  a,b,item,p,q,v:string;
  sum,xx,m:extended;
implementation
   uses FrmMain;
{$R *.dfm}

procedure TFormHuajia.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
  //同步选择与输入相同的药物信息

end;

procedure TFormHuajia.StringGrid1DrawCell(Sender: TObject; ACol,
  ARow: Integer; Rect: TRect; State: TGridDrawState);
begin
   //绘制表格,在表格的位置插入DBGrid
   if (gdFocused in State) then
  begin
      DBGrid2.Left:=Rect.Right+StringGrid1.Left;
      DBGrid2.Top:=Rect.Bottom+StringGrid1.Top;
  end;
end;

procedure TFormHuajia.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
   //设定只有选择第一项时才显示DBGird
   if acol=0 then
      DBGrid2.Visible:=true
   else
      DBGrid2.Visible:=false;
   
end;

procedure TFormHuajia.StringGrid1Click(Sender: TObject);
begin
   i:=FormHuajia.StringGrid1.Row;//返回指针放置点的行号
   k:=FormHuajia.StringGrid1.RowCount;
end;

procedure TFormHuajia.StringGrid1KeyPress(Sender: TObject; var Key: Char);
begin
  //限制只能输入数字退格键
  if (not (key in['0'..'9']) and (key<>#8)) then
    begin
       MessageDlg('请输入真确数字',mtConfirmation,[mbOK],0);
       Key:=#0;
    end;
end;

procedure TFormHuajia.ComboBox3Change(Sender: TObject);
begin
   FormHuajia.ComboBox3.Text:=FormHuajia.ComboBox3.Items.Text;
end;

procedure TFormHuajia.ComboBox3CloseUp(Sender: TObject);
begin
   //当下拉菜单回复时,把信息输入到相应的文本框中

end;


procedure TFormHuajia.Button1Click(Sender: TObject);
begin

   if (FormHuajia.ComboBox3.Text<>'') and (FormHuajia.Edit4.Text<>'')
      and (FormHuajia.ComboBox2.Text<>'')and (FormHuajia.ComboBox3.Text<>'') then
   //判断输入是否为空,不为空则插入信息
   begin

   end
   else Application.MessageBox('不能为空','提示',MB_OK);
   FormHuajia.Button7.Click;
end;

procedure TFormHuajia.Timer1Timer(Sender: TObject);
begin
   FormHuajia.Edit5.Text:=formatdatetime('yyyy-mm-dd'+'  '+'hh:mm:ss',now);
end;

procedure TFormHuajia.Button3Click(Sender: TObject);
var
  i,Max,Max1:integer;
  s:string;
begin
   //自动生成编号

   
end;

procedure TFormHuajia.Button4Click(Sender: TObject);
begin
   //清零
   FormHuajia.Edit1.Text:='';
   FormHuajia.Edit2.Text:='';
   FormHuajia.Edit3.Text:='';
   FormHuajia.Edit4.Text:='';
   FormHuajia.ComboBox3.Text:='';
   FormHuajia.ComboBox2.Text:='';
   FormHuajia.ComboBox3.Text:='';

end;

procedure TFormHuajia.Button5Click(Sender: TObject);
var
  x,y,z,Max:integer;
  g:string;
begin
 if bb=0 then//当判断是否已经保存过
 begin
   Max:=0;
   for y:=1 to u do //设置列号
      for x:=0 to 5 do//设置行号
        begin
           g:=FormHuajia.StringGrid1.Cells[x,y];//输出当前格子中的信息
           if (FormHuajia.StringGrid1.Cells[x,y]<>'') and (x<>2) and (x<>1) then //判断此格子是否为空,且不为第2,3列的格子
           begin

           end;
           bb:=1;
        end;
 end;
end;

procedure TFormHuajia.Timer2Timer(Sender: TObject);
begin
   //取当天输入的信息的行数
   if FormHuajia.StringGrid1.Cells[0,u+1]<>'' then
   begin
      u:=u+1;
   end;
end;

procedure TFormHuajia.Edit4Change(Sender: TObject);
begin
   bb:=0;//初始化
end;

procedure TFormHuajia.Button6Click(Sender: TObject);
var
   k:integer;
begin
  //计算总金额
   for k:=1 to u do
   begin
      if FormHuajia.StringGrid1.Cells[5,u]<>'' then
      begin
         m:=m+strtofloat(FormHuajia.StringGrid1.Cells[5,u]);
         FormHuajia.Edit3.Text:=floattostr(m);
      end;
   end;
end;

procedure TFormHuajia.Button7Click(Sender: TObject);
begin
   FormHuajia.Button4.Click;//清零输入信息
   a:=Formatdatetime('yyyy-mm-dd',now()+1)+'  '+'23:59:59'; //设置时间的最大值
   b:=Formatdatetime('yyyy-mm-dd',now())+'  '+'00:00:00';//设置时间的最小值
   //初始设置,把StringGrid1的首行设置文字
   FormHuajia.StringGrid1.Cells[0,0]:='  药品编号  ';
   FormHuajia.StringGrid1.Cells[1,0]:='  药物名称  ';
   FormHuajia.StringGrid1.Cells[2,0]:='  规  格    ';
   FormHuajia.StringGrid1.Cells[3,0]:='  单  价    ';
   FormHuajia.StringGrid1.Cells[4,0]:='  数  量    ';
   FormHuajia.StringGrid1.Cells[5,0]:='  金  额    ';
   FormHuajia.StringGrid1.Cells[6,0]:='  有效期    ';
   FormHuajia.StringGrid1.Cells[7,0]:='  费用归类  ';

   FormHuajia.Button3.Click;//自动生成号码触发
end;

end.

⌨️ 快捷键说明

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