亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? area.pas

?? 物業管理系統系統特點 一、 實現集中式管理 系統將集團公司、各分公司、各物業管理處連接到一起
?? PAS
字號:
unit area;

interface

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

type
    Tf_area = class(TForm)
    BDelete: TButton;
    BPageDown: TButton;
    BESC: TButton;
    BInsert: TButton;
    StringGrid1: TStringGrid;
    procedure BPageDownClick(Sender: TObject);
    procedure BESCClick(Sender: TObject);
    procedure BDeleteClick(Sender: TObject);
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BInsertClick(Sender: TObject);
    procedure ListView1CustomDrawItem(Sender: TCustomListView;
      Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
    procedure FormCreate(Sender: TObject);
    procedure FocusTAB(var Grid: TStringGrid);
    Function InfoIsNull: Boolean;
    procedure StringGrid1KeyPress(Sender: TObject; var Key: Char);
    procedure FormShow(Sender: TObject);
    procedure StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
      var CanSelect: Boolean);
    procedure StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
      Rect: TRect; State: TGridDrawState);

  private
    { Private declarations }
  public
    { Public declarations }
     bMod:bool;
     col,row: Integer;
     sNum:Array[0..100] of AnsiString;
     sProvider:Array[0..100] of AnsiString;
     sPrice:Array[0..100] of AnsiString;
     sProv:string;
     sStyle:string;
     sTable:string;
  end;
var
  f_area: Tf_area;


implementation

uses data, main;

{$R *.dfm}

//初始化
procedure Tf_area.FormCreate(Sender: TObject);
var
    Query:TADOQuery;
    i:integer;
begin
    bOK:=false;
    Col := 0;
    Row := 1;
    stringgrid1.DefaultRowHeight:=18;
    sTable:='計量單位';

    i:=0;
    Query:=TADOQuery.Create(nil);
    Query.Connection:=DataModuleADO.ADOConnection1;
    Query.SQL.Add('select * from '+sTable+' order by 編號');
    Query.Open ;
    while not query.Eof do
    begin
        inc(i);
        if i>1 then
        begin
            stringgrid1.RowCount:=stringgrid1.RowCount+1;
            stringgrid1.row:=stringgrid1.row+1;
            stringgrid1.Col:=1;
        end;
        with stringgrid1 do
        begin
            Cells[0,i]:=inttostr(i);
            Cells[1,i]:=Query.FieldByName('編號').Value;
            Cells[2,i]:=Query.FieldByName('名稱').Value;
        end;
        query.Next ;
    end;
end;

//顯示
procedure Tf_area.FormShow(Sender: TObject);
begin
    bOK:=true;
    with StringGrid1 do
    begin
        ColWidths[0]:=19;
        ColWidths[1]:=80;
        ColWidths[2]:=210;
        Cells[0,0]:='序';
        Cells[1,0]:='編號';
        Cells[2,0]:='名稱';
        Cells[0,1]:='1';
    end;
end;

//Tab
procedure Tf_area.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var
    i:integer;
    d,d1,d2:double;
begin
    if key=VK_INSERT then BInsertClick(Sender)
    else if key=VK_DELETE then BDeleteClick(Sender)
    else if key=VK_NEXT then BPageDownClick(Sender)
    else if key=VK_ESCAPE then BESCClick(Sender);
end;


//增加
procedure Tf_area.BInsertClick(Sender: TObject);
begin
    StringGrid1.RowCount:=StringGrid1.RowCount+1;
    StringGrid1.row:=StringGrid1.row+1;
    StringGrid1.Col:=1;
    StringGrid1.Cells[0,StringGrid1.row]:=IntToStr(StringGrid1.Row);
    if row > 1 then StringGrid1.Cells[0,row-1]:=inttostr(row-1);
end;

//刪除
procedure Tf_area.BDeleteClick(Sender: TObject);
var
   i,j,rows:integer;
   d1,d2:double;
   s:string;
   Query:TADOQuery;
begin
    if(Application.MessageBox(PChar('確認要刪除所選擇記錄嗎?') ,'提示',Mb_OKCANCEL+Mb_IconInformation)=2) then exit;

    if row = 1 then
    begin
        for i:=1 to 2 do
           stringgrid1.Cells[i,1]:='';
    end
    else
    begin
        for i:=row to stringgrid1.RowCount-1 do
        begin
            stringgrid1.Cells[0,i]:=inttostr(i);
            stringgrid1.Cells[1,i]:=stringgrid1.Cells[1,i+1];
            stringgrid1.Cells[2,i]:=stringgrid1.Cells[2,i+1];
        end;
        if StringGrid1.RowCount>2 then StringGrid1.RowCount := StringGrid1.RowCount-1;
    end;

    Query:=TADOQuery.Create(nil);
    Query.Connection := DataModuleADO.ADOConnection1;
    DataModuleADO.ADOConnection1.BeginTrans;
    query.sql.Clear ;
    Query.SQL.Text:='delete from '+sTable+' where 編號='''+stringgrid1.Cells[1,row]+'''';
    query.ExecSQL;
    DataModuleADO.ADOConnection1.CommitTrans;

    query.Close;
    query.Free;

    showmessage('刪除操作成功。');
end;

//保存
procedure Tf_area.BPageDownClick(Sender: TObject);
var
  i,j:integer;
  s,ss,rr:string;
  Query:TADOQuery;
  Query1:TADOQuery;
begin
    for i:=1 to stringgrid1.RowCount-1  do
    begin
        if stringgrid1.Cells[1,i]='' then
        begin
            row := i;
            BDeleteClick(Sender);
        end;
    end;

    if InfoIsNull = true then  exit;

    if(Application.MessageBox(PChar('確認要保存該信息嗎?') ,'提示',Mb_OKCANCEL+Mb_IconInformation)=2) then exit;

    Query:=TADOQuery.Create(nil);
    Query.Connection:=DataModuleADO.ADOConnection1;
    Query1:=TADOQuery.Create(nil);
    Query1.Connection:=DataModuleADO.ADOConnection1;
    
    for i:=1 to stringgrid1.RowCount-1  do
    begin
        query.sql.Clear ;
        Query.SQL.Add('select * from '+sTable+' where 編號='''+stringgrid1.Cells[1,i]+'''');
        Query.Open ;
        if query.RecordCount =0 then
        begin
            s := 'insert into '+sTable+'(編號,名稱)'+' values(:s1,:s2)';
            query.sql.Clear ;
            query.sql.add(s);
            query.Parameters.ParamByName('s1').Value:=stringgrid1.Cells[1,i];
            query.Parameters.ParamByName('s2').Value:=stringgrid1.Cells[2,i];
            query.execsql;
        end
        else
        begin
            if  query.Fieldbyname('名稱').AsString <> stringgrid1.Cells[1,i] then
            DataModuleADO.ADOConnection1.BeginTrans;
            query.sql.Clear ;
            Query.SQL.Text:='update '+sTable+' set 名稱='''+stringgrid1.Cells[2,i]+''' where 編號='''+stringgrid1.Cells[1,i]+'''';
            query.ExecSQL;
            DataModuleADO.ADOConnection1.CommitTrans;
        end;
    end;

    query.Close;
    query.Free;
    query1.Close;
    query1.Free;

    showmessage('保存成功。');
    bOK:=true;
end;

//返回
procedure Tf_area.BESCClick(Sender: TObject);
var
    b:bool;
begin
    If bOK=false Then
    begin
        if(Application.MessageBox(PChar('還沒保存,要退出嗎?') ,'提示',Mb_OKCANCEL+Mb_IconInformation)=1) then
            b := True;
    end
    Else
        b := True;

    If b = True Then
    begin
        close();
    End;
end;

//1  StringGrid1  Tab  加行
Procedure Tf_area.FocusTAB(var Grid: TStringGrid);
begin
    if Grid.Col<Grid.ColCount-1 then Grid.Col:=Grid.Col+1
    else if Grid.row<>Grid.RowCount-1 then //判斷是否是最后1行
    begin
        Grid.row:=Grid.row+1;
        Grid.Col:=1;
    end
    else
    begin
        Grid.RowCount:=Grid.RowCount+1;
        Grid.row:=Grid.row+1;
        Grid.Col:=1;
        StringGrid1.Cells[0,Grid.RowCount-1]:=inttostr(Grid.RowCount-1);
    end;
end;

//2  StringGrid1  KeyPress 數量、單價只能為double值
procedure Tf_area.StringGrid1KeyPress(Sender: TObject; var Key: Char);
begin
    if key=#13 then Self.FocusTAB(StringGrid1);
    if (col = 5)or(col = 6) then
        if not( Key in ['0'..'9',#8,'.']) then
            Key := #0;
end;

//3  StringGrid1  SelectCell  設置只讀欄
procedure Tf_area.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);
begin
    Row := ARow;
    Col := ACol;
    if  (acol=1) or (acol=2) then    //列號
        stringgrid1.Options := stringgrid1.Options + [goediting]
    else
        stringgrid1.Options :=stringgrid1.Options - [goediting];
end;

//4  StringGrid1  DrawCell  設置欄對齊
procedure Tf_area.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var
    s:   String;
    R:   TRect;
begin
    with StringGrid1 do
    begin
        Canvas.FillRect(Rect);
        S := Cells[ACol,ARow];
        R := Rect;
        if (ACol>4) and (ACol<10) then DrawText(Canvas.Handle,PChar(s),Length(s),r,DT_RIGHT or DT_SINGLELINE or DT_VCENTER)
        else if ACol=0 then DrawText(Canvas.Handle,PChar(s),Length(s),r,DT_CENTER or DT_SINGLELINE or DT_VCENTER)
        else DrawText(Canvas.Handle,PChar(s),Length(s),r,DT_LEFT or DT_SINGLELINE or DT_VCENTER);
    end;
end;

procedure Tf_area.ListView1CustomDrawItem(Sender: TCustomListView;
  Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
    if   Item.Selected = true then
    begin
          Sender.Canvas.Brush.Color   :=   clMenuHighlight;
          (Sender   as   TListView).Canvas.Font.Color   :=  clWhite;
    end;
end;

//檢查編號、名稱是否有重復
function Tf_area.InfoIsNull: Boolean;
var
    i,j,k: Integer;
    query:TADOQuery;
begin
    Query:=TADOQuery.Create(nil);
    Query.Connection := DataModuleADO.ADOConnection1;
    For i := 1 to StringGrid1.RowCount-1 do
    begin
        For j := i+1 to StringGrid1.RowCount-1 do
        begin
            if Trim(StringGrid1.Cells[1,i])=Trim(StringGrid1.Cells[1,j]) then
            begin
                showmessage('編號重復。');
                StringGrid1.row := j;
                StringGrid1.col :=1;
                Result :=true;
                exit;
            end;
        end;
        For j := i+1 to StringGrid1.RowCount-1 do
        begin
            if Trim(StringGrid1.Cells[2,i])=Trim(StringGrid1.Cells[2,j]) then
            begin
                showmessage('名稱重復。');
                StringGrid1.row := j;
                StringGrid1.col :=2;
                Result :=true;
                exit;
            end;
        end;
    end;
    Result :=false;
end;


end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美综合天天夜夜久久| 亚洲欧美国产毛片在线| 亚洲桃色在线一区| 久久99蜜桃精品| 色88888久久久久久影院野外| 欧美一区二区三区白人| 亚洲摸摸操操av| 懂色一区二区三区免费观看| 日韩一级二级三级精品视频| 亚洲一区二区视频在线观看| 国产91富婆露脸刺激对白| 欧美成人午夜电影| 天天做天天摸天天爽国产一区| 97成人超碰视| 中文字幕一区二区视频| 国产在线播放一区三区四| 日韩视频免费观看高清完整版在线观看 | 国产欧美综合在线| 日本vs亚洲vs韩国一区三区| 欧美亚洲动漫精品| 亚洲狼人国产精品| 99国产精品视频免费观看| 中文在线一区二区| 国产成人精品一区二区三区四区| 亚洲精品一区二区三区99| 久久精品国产免费看久久精品| 日韩亚洲欧美在线观看| 美腿丝袜一区二区三区| 日韩欧美一级精品久久| 麻豆精品在线观看| 精品免费国产二区三区| 国产在线精品一区二区| 26uuu精品一区二区三区四区在线| 蜜臀99久久精品久久久久久软件| 欧美一级二级三级蜜桃| 免费在线一区观看| 欧美成人在线直播| 国产成人欧美日韩在线电影| 中文字幕不卡一区| 91在线观看地址| 一区二区三区在线看| 欧美日韩国产一区二区三区地区| 视频一区中文字幕| 日韩一区二区电影| 国产盗摄女厕一区二区三区| 国产精品久久久久久久久快鸭 | 日韩色视频在线观看| 国产一区二区三区日韩| 国产校园另类小说区| 色婷婷亚洲综合| 日韩成人精品在线| 精品国产凹凸成av人网站| 国产精品一级片在线观看| 中文字幕综合网| 欧美三电影在线| 美国av一区二区| 欧美激情综合在线| 欧美视频一区二区三区| 奇米精品一区二区三区在线观看| 欧美r级在线观看| 91丝袜高跟美女视频| 香蕉成人啪国产精品视频综合网| 精品国产乱码久久久久久1区2区| proumb性欧美在线观看| 人人狠狠综合久久亚洲| 亚洲欧洲日韩综合一区二区| 欧美日韩视频在线观看一区二区三区| 国产在线精品一区二区不卡了 | 色综合久久66| 精品一区精品二区高清| 国产精品麻豆久久久| 日韩一区二区三区在线观看| 波多野结衣在线一区| 天天色天天操综合| 国产精品亲子伦对白| 欧美一卡2卡三卡4卡5免费| 成人av网在线| 激情综合五月天| 亚洲国产另类av| 国产精品久久久久天堂| 日韩一区二区三区四区五区六区| 91免费视频大全| 国内精品伊人久久久久av一坑| 亚洲精品免费视频| 国产日韩欧美精品电影三级在线| 欧美丰满少妇xxxbbb| 99久久久精品免费观看国产蜜| 精品一区二区免费在线观看| 亚洲综合在线第一页| 中文字幕亚洲不卡| 久久婷婷综合激情| 日韩视频免费观看高清在线视频| 色哟哟日韩精品| 成人免费看的视频| 九色综合狠狠综合久久| 视频一区欧美精品| 亚洲国产精品天堂| 一区二区三区在线视频播放| 国产欧美日韩三级| 精品国产亚洲在线| 日韩精品一区二区三区在线| 欧美丰满一区二区免费视频| 日本高清无吗v一区| 色综合欧美在线视频区| 不卡一区在线观看| 成人看片黄a免费看在线| 国产高清在线精品| 国产一区二区免费在线| 国内精品伊人久久久久av影院| 老司机免费视频一区二区三区| 日韩国产成人精品| 日本色综合中文字幕| 日韩国产欧美一区二区三区| 午夜精品成人在线视频| 日韩成人精品在线观看| 免费看黄色91| 精品一区二区三区免费观看 | 色屁屁一区二区| 91福利小视频| 欧美久久高跟鞋激| 在线不卡a资源高清| 欧美一卡二卡三卡| 久久综合狠狠综合久久综合88| 久久久影视传媒| 国产精品天干天干在线综合| 亚洲欧美在线观看| 亚洲国产精品一区二区www在线| 偷窥少妇高潮呻吟av久久免费| 爽好久久久欧美精品| 精品无人码麻豆乱码1区2区| 国产一区二区三区四区五区美女 | 一级女性全黄久久生活片免费| 亚洲一区二区三区中文字幕| 日韩成人免费电影| 国产福利不卡视频| 在线免费一区三区| 欧美成人免费网站| 国产精品三级视频| 亚洲成在人线在线播放| 精品一区二区三区久久久| 成人黄动漫网站免费app| 91精彩视频在线| 日韩视频在线一区二区| 中文字幕av一区二区三区| 亚洲国产欧美日韩另类综合| 精品一区二区三区在线播放视频| 成人免费看片app下载| 在线观看av不卡| 欧美一区二区在线看| 久久久久国产一区二区三区四区| 亚洲特黄一级片| 九色|91porny| 日本高清不卡一区| 欧美精品一区二区三区在线播放| 成人免费一区二区三区在线观看| 亚洲国产综合91精品麻豆| 国产剧情在线观看一区二区| 色94色欧美sute亚洲13| 久久综合av免费| 一片黄亚洲嫩模| 国产成人h网站| 欧美高清www午色夜在线视频| 中文字幕av一区二区三区高| 青青草国产精品亚洲专区无| 不卡av在线网| 精品88久久久久88久久久 | 日韩视频免费观看高清在线视频| 中文字幕日韩精品一区| 麻豆成人综合网| 色94色欧美sute亚洲线路一久| 久久你懂得1024| 青草国产精品久久久久久| 91老司机福利 在线| 久久久久久一级片| 日韩福利视频导航| 91高清在线观看| 中文字幕在线免费不卡| 国产在线国偷精品免费看| 91精品国产综合久久久久久久| 中文字幕一区二区三区在线观看 | 奇米综合一区二区三区精品视频| 成人一区二区三区在线观看| 日韩欧美一区在线| 亚洲www啪成人一区二区麻豆| 成人黄色电影在线| 久久精品在线免费观看| 国产揄拍国内精品对白| 日韩小视频在线观看专区| 亚洲一区二区精品久久av| 91丨九色丨蝌蚪富婆spa| 国产精品国产自产拍高清av王其| 狠狠色丁香婷婷综合久久片| 日韩免费一区二区| 强制捆绑调教一区二区| 91麻豆精品国产91久久久资源速度 | 欧美日韩黄色一区二区| 亚洲一区二区在线免费看| 欧美在线视频不卡| 亚洲一区二区在线观看视频 | 国产欧美精品一区二区三区四区|