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

📄 dangerdatalist.pas

📁 彩票销售系统
💻 PAS
字号:
unit DangerDataList;

interface

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

type
  TMyDBGrid=class(TDBGrid);
  TDangerDataListForm = class(TForm)
    StatusBar1: TStatusBar;
    ToolBar1: TToolBar;
    DataSource1: TDataSource;
    BitBtn1: TBitBtn;
    Panel1: TPanel;
    Splitter1: TSplitter;
    Panel2: TPanel;
    GroupBox1: TGroupBox;
    DBGrid2: TDBGrid;
    DataSource2: TDataSource;
    DangerEntry: TADOQuery;
    DangerEntryNumberNO: TIntegerField;
    DangerEntryNumberNOEntry: TIntegerField;
    DangerEntryNumberMoney: TBCDField;
    DangerEntryNumberRatio: TBCDField;
    DangerEntryOutMoney: TBCDField;
    DangerEntryInMoney: TBCDField;
    DangerEntryDangerMoney: TBCDField;
    dangerdatelistsp: TADOQuery;
    Panel3: TPanel;
    Panel4: TPanel;
    GroupBox2: TGroupBox;
    DBGrid1: TDBGrid;
    GroupBox3: TGroupBox;
    Label1: TLabel;
    Edit1: TEdit;
    ADOStoredProc1: TADOStoredProc;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormShow(Sender: TObject);
    procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    procedure FormCreate(Sender: TObject);
    procedure DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure DBGrid2DrawColumnCell(Sender: TObject; const Rect: TRect;
      DataCol: Integer; Column: TColumn; State: TGridDrawState);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
    Procedure OnMouseWheel(Var Msg :TMsg;var Handled:Boolean);
  public
    { Public declarations }
  end;

var
  DangerDataListForm: TDangerDataListForm;

implementation
  uses NumberManger,NumberSaleNew;
{$R *.dfm}
Procedure TDangerDataListForm.OnMouseWheel(Var Msg :TMsg;var Handled:Boolean);
begin
  if Msg.message = WM_MouseWheel then
  begin
    if Msg.wParam > 0 then
     begin
       if DBGrid1.Focused then
         SendMessage(DBGrid1.Handle,WM_VSCROLL,SB_PAGEUP,0);
     end
    else
     begin
       if DBGrid1.Focused then
         SendMessage(DBGrid1.Handle,WM_VSCROLL,SB_PAGEDOWN,0);
     end;
    Handled:= True;
  end;
end;

procedure TDangerDataListForm.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
  action:=cafree;
end;

procedure TDangerDataListForm.FormShow(Sender: TObject);
begin
  dangerdatelistsp.Close;
  dangerdatelistsp.SQL.Clear;
  dangerdatelistsp.SQL.Add('select * from Danger_Number Order By DangerMoney');
  dangerdatelistsp.open;
  //ADOTable1.open;
end;

procedure TDangerDataListForm.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
  with TMyDBGrid(Sender) do
  begin
    if (dangerdatelistsp.Fields[5].value<0) then
    begin
     (Sender as TDBGrid).Canvas.Brush.Color := RGB(191, 255, 223);  //定义背景颜色
     (Sender as TDBGrid).Canvas.Font.Color:=clRed;
    end
    else
    begin
      (Sender as TDBGrid).Canvas.Brush.Color := RGB(191, 255, 223); //定义背景颜色
      (Sender as TDBGrid).Canvas.Font.Color:=clBlue;
    end;
    DefaultDrawColumnCell(Rect,DataCol,Column,State);

  end;
end;

procedure TDangerDataListForm.FormCreate(Sender: TObject);
begin
  Application.OnMessage:=OnMouseWheel; // 截获鼠标滚动事件
end;

procedure TDangerDataListForm.DBGrid1MouseUp(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
  var
    querystring:string;
begin
  querystring:='select * from Danger_NumberEntry where NumberNO='''+floattostr(dangerdatelistsp.Fields[0].Value)+'''';
  querystring:=querystring+' order by DangerMoney';
  DangerEntry.Close;
  DangerEntry.SQL.Clear;
  DangerEntry.SQL.Add( querystring);
  DangerEntry.open;
end;

procedure TDangerDataListForm.DBGrid2DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
begin
  with TMyDBGrid(Sender) do
  begin
    if (DangerEntry.Fields[6].value<0) then
    begin
     (Sender as TDBGrid).Canvas.Brush.Color := RGB(191, 255, 223);  //定义背景颜色
     (Sender as TDBGrid).Canvas.Font.Color:=clRed;
    end
    else
    begin
      (Sender as TDBGrid).Canvas.Brush.Color :=RGB(191, 255, 223); //定义背景颜色
      (Sender as TDBGrid).Canvas.Font.Color:=clBlue;
    end;
    DefaultDrawColumnCell(Rect,DataCol,Column,State);
    
  end;
end;

procedure TDangerDataListForm.Edit1KeyPress(Sender: TObject;
  var Key: Char);
var
   querystr:string;
begin
  if key=#13 then
  begin
    //
    if edit1.text<>'' then
    begin
    ADOStoredProc1.Close;
    ADOStoredProc1.Parameters[1].Value:=saleperiod;
    ADOStoredProc1.Parameters[2].Value:=strtofloat(edit1.text);
    ADOStoredProc1.ExecProc;
    ADOStoredProc1.Close;
    querystr:='select * from Avg_NumberEntry where NumberNO=9999  order by DangerMoney';
    DangerEntry.Close;
    DangerEntry.SQL.Clear;
    DangerEntry.SQL.Add( querystr);
    DangerEntry.open;
    end
    else
    begin
      application.MessageBox('请输入风险值!','系统提示',MB_ICONERROR);
      edit1.SetFocus;
    end;
  end;
  if not (key in ['0'..'9',Chr(8)])  then
  key:=#0;
end;

end.

⌨️ 快捷键说明

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