DELPHI代码

unit khjbgl;

interface

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

type
  TForm25 = class(TForm)
    BitBtn1: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn5: TBitBtn;
    BitBtn4: TBitBtn;
    BitBtn2: TBitBtn;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    Label1: TLabel;
    Label2: TLabel;
    Label10: TLabel;
    Edit2: TEdit;
    Edit1: TEdit;
    Label7: TLabel;
    Label4: TLabel;
    Label3: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    procedure FormShow(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Edit2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure BitBtn1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form25: TForm25;

implementation
   uses wlzgl,data2;
{$R *.dfm}

procedure TForm25.FormShow(Sender: TObject);
begin
  Label5.Caption := ForMatDateTime(‘yyyy-mm-dd‘,Now);
  Label6.Caption := czymc;
  with datam.ADOQuery1 do
  begin
    Close;
    SQL.Clear;
    SQL.Add(‘select * from 客户级别表‘);
    Open;
  end;
  if datam.ADOQuery1.RecordCount>0 then
    DataSource1.DataSet := datam.ADOQuery1;
end;

procedure TForm25.BitBtn1Click(Sender: TObject);
var
  s,m: String;
  i: integer;
begin
  s:= ‘C‘+ FormatDateTime(‘yyyymmdd‘,Now());
  With datam.ADOQuery2 do
  begin
    Close;
    SQL.Clear;
    SQL.Add(‘select max(级别编号) as ss From 客户级别表 ‘);
    Open;
  end;
  If datam.ADOQuery2.FieldByName(‘ss‘).Value = null then
    s := s + ‘001‘
  else
  begin
    m:= Trim(datam.ADOQuery2.FieldByName(‘ss‘).Value) ;
    i:= StrToInt(Trim(Copy(m,10,5))) ;
    if i<9 then
      s:= s + ‘00‘+ InttoStr(i +1)
    else if i<99 then
      s:= s + ‘0‘+ InttoStr(i +1)
    else
      s:= s +InttoStr(i +1);
  end;
  Label7.Caption := s;
  Label6.Caption := czymc;
  Label5.Caption := FormatDateTime(‘yyyy-mm-dd‘,Now);
  Edit1.SetFocus;
  BitBtn3.Enabled := True;
end;
procedure TForm25.BitBtn5Click(Sender: TObject);
begin
  Edit1.Clear;
  Edit2.Clear;
  Label7.Caption := ‘‘;
  Label6.Caption := ‘‘;
  Label5.Caption := ‘‘;
end;

procedure TForm25.BitBtn3Click(Sender: TObject);
begin

  if (Trim(Edit1.Text)<>‘‘)and(Trim(Edit2.Text)<>‘‘)and(Trim(Label5.Caption)<>‘‘)and
    (Trim(Label6.Caption)<>‘‘)and(Trim(Label7.Caption)<>‘‘)then
  begin
    Try
      with datam.ADOQuery2 do
      begin
        Close;
        SQL.Clear;
        SQL.Add(‘Insert 客户级别表 values (:a ,:b,Default ,:d,:e)‘);
        Parameters.ParamByName(‘a‘).Value := Trim(Label7.Caption);
        Parameters.ParamByName(‘b‘).Value := Trim(Edit1.Text);
        Parameters.ParamByName(‘d‘).Value := Trim(Label6.Caption);
        Parameters.ParamByName(‘e‘).Value := Trim(Edit2.Text);
        ExecSQL;
      end;
      Application.MessageBox(‘添加成功。‘,‘提示‘,64);
      BitBtn5.OnClick(Sender);
      with datam.ADOQuery1 do
      begin
        Close;
        SQL.Clear;
        SQL.Add(‘select * from 客户级别表‘);
        Open;
      end;
      if datam.ADOQuery1.RecordCount>0 then
        DataSource1.DataSet := datam.ADOQuery1;
          BitBtn3.Enabled := False;
      BitBtn1.SetFocus;
    Except
      Application.MessageBox(‘系统出错。‘,‘提示‘,64);
      Close;
    end;
  end;
end;

procedure TForm25.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = Vk_ReTurn then
    if Trim(Edit1.Text)<>‘‘ then
      Edit2.SetFocus;
end;

procedure TForm25.Edit2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_ReTurn then
    if (Trim(Edit2.Text)<>‘‘)and(BitBtn3.Enabled = True) then
      BitBtn3.SetFocus;
end;

procedure TForm25.BitBtn4Click(Sender: TObject);
begin
  if datam.ADOQuery1.RecordCount>0 then
    if Application.MessageBox(Pchar(‘确实要删除级别编号为‘+ Trim(datam.ADOQuery1.FieldByName(‘级别编号‘).Value) +‘的级别信息吗?‘),‘提示‘,MB_YesNo)= ID_Yes then
      datam.ADOQuery1.Delete;
end;

procedure TForm25.BitBtn1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  TBitBtn(Sender).Font.Color := clRed ;
end;

procedure TForm25.BitBtn1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  TBitBtn(Sender).Font.Color := clBlue;
end;

end.
时间: 2024-10-04 11:30:43

DELPHI代码的相关文章

Delphi代码创建形式规范 1.0

            Delphi代码创建形式规范 1.0 本规范的目的:给自己的代码一个统一而标准的外观,增强 可读性,可理解性,可维护性 本规范的原则:名称反映含义,形式反映结构 1.单元风格 2.各区风格 3.语句风格 4.命名规则 参考:Borland官方Object Pascal风格指南 Delphi5程序员指南编码标准 1.单元风格 {*******************************************************} { } { 项目名称 } { }

Winsock完成端口模型-Delphi代码

原文出处 <Windows网络编程技术>第8章 完成端口模型 由于原书附的是C代码,我把其翻译成Delphi代码. 其中winsock2.pas在delphi中不带,要另外下载http://jungla.dit.upm.es/~bti/files/winsock2.pas program CompletionIO; {$APPTYPE CONSOLE} uses  SysUtils,  WinSock2 in 'WinSock2.pas',  Mains in 'Mains.pas'; beg

Delphi 设计模式:《HeadFirst设计模式》Delphi代码---模式小结之一个叫声接口和几只鸭子[转]

一.一个叫声接口和几只鸭子 1.从一个叫声接口开始.  1 2{<HeadFirst设计模式>Delphi代码之模式小结 } 3{ 一个叫声接口                            } 4{ 编译工具:Delphi2010 for win32          } 5{ E-Mail :[email protected]             } 6 7unit uQuackable; 8 9interface1011type12  IQuackable = interfa

AV 地址错误 map 文件 根据地址报错,查 Delphi 代码

1. 首先需要设置程序生成 map 文件.Project -> Options -> Linker -> Map file , Detailed 2. 计算公式Edit2.Text := IntToHex(StrToInt('$'+ Edit1.Text) - StrToInt('$00400000') - StrToInt('$00001000'), 8) ;将看到的地址错误,输入到 Edit1 中. 3. 从 Map 文件中查这个地址.一般直接查是找不到的.根据获得的 Edit2 中

QQ聊天机器人 Delphi代码

QQ聊天机器人 前几日,看到杂志上有一篇关于开发QQ聊天机器人的文章.谈到了对QQ循环发送消息内容,感觉倒也很好玩,于是拿起Delphi开始了我的QQ聊天机器人之路. 首先要明白自己要做什么,大家都用过QQ,知道给别人发送消息的整个过程吧!要实现循环发送消息的功能该有以下几个条件: 1.必须是在聊天模式里进行.这样发送完一条消息后,QQ窗体还存在. 2.其次是要找到QQ文本窗体的句柄. 3.向QQ文本窗体中贴上你想说的话.然后自己点击发送按钮. 思路很简单,接着我们就要开始实施了. 首先要找到Q

汉字与区位码互转(Delphi代码,很容易理解)

汉=BABA(内码)=-A0A0=2626(区位码)字=D7D6(内码)=-A0A0=5554(区位码) //汉字转区位码function Str2GB(const S: AnsiString): string; const G = 160; // 160 = hA0 var n, m: word;begin n := Ord(S[1]); m := Ord(S[2]); Result := FormatFloat('00', n-G) + FormatFloat('00', m-G);end;

inno setup判断是Windows系统版本(其实还是Delphi代码,还能检查域控制器和家庭版)

1.设置Windows最低版本要求 [Setup]: MinVersion 格式: a.bb,c.dd,这里 a.bb 是 Windows 版本,c.dd 是 Windows NT 版本. 默认值: 4.0,4.0 描述:这个指令让你指定你的软件运行必须的 Windows 或 Windows NT 版本最小版本,要防止你的程序在 Windows 或 Windows NT 下运行,请在最小版本中的一个指定“0”.构建号和/或安全服务包级别可以包含在版本号中.如果用户系统不适合最小版本需求,安装程序

Delphi代码模拟“显示桌面”的功能

今天有人问我:“用shell打开文件(显示桌面.scf)的方式还是用模拟键盘(Win+D)显示桌面”这应该有更好的方法,就搜了搜,关键字定位“ToggleDesktop”因为显示桌面.scf的内容是:[Shell]Command=2IconFile=explorer.exe,3[Taskbar]Command=ToggleDesktop 找到了MSDN http://msdn.microsoft.com/en-us/library/bb774124(VS.85).aspx给出的是VB脚本和Jav

delphi代码中对窗体进行设置

//蛋痛的设置,不过理解了也方便,先记录一下为好.免的忘了. Form1.BorderStyle:=bssingle; //设置窗体外框,可移动,不可移动,对话框,无边框等 Form1.BorderIcons:=BorderIcons-[bimaximize]; //去掉最大化,最小化或关闭按钮. //=====

Delphi 代码实现窗口透明+圆角边框

1 procedure TfrmRemoteData.DoInvisible; //透明 2 var 3 control: TControl; 4 index, margin, X, Y, ctlX, ctlY, i: Integer; 5 fullRgn, clientRgn, ctlRgn: THandle; 6 begin 7 margin := (Width - ClientWidth) div 2; 8 fullRgn := CreateRectRgn(0, 0, Width, Hei