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

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

?? untopenlbl.pas

?? 自動創建帶密碼的Access數據庫及表,第三方控件主要有: ReportMachine3.67 ,WinSkin4.22, DBGridEh等
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
unit untOpenLbl;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, DB, ADODB, UntMain, StdCtrls, ComCtrls, UDM, Buttons,
  Menus, DBTables, Mask, DBCtrls, Grids, DBGrids, RM_Common, RM_Class,
  RM_Dataset, RM_AsBarView, RM_Designer, RM_BarCode, RM_e_main, RM_e_Xls;

type
  TfrmOpenLabel = class(TForm)
    pnlTitle: TPanel;
    pnlBot: TPanel;
    qryLblInput: TADOQuery;
    dsLblInput: TDataSource;
    pnlLbl: TPanel;
    lblTitle: TLabel;
    lblTitle1: TLabel;
    lblTitle2: TLabel;
    lvLabel: TListView;
    qrytmp: TADOQuery;
    btnAdd: TSpeedButton;
    pmRebuildTable: TPopupMenu;
    mmRbdTbl: TMenuItem;
    btnModify: TSpeedButton;
    btnDelete: TSpeedButton;
    btnSave: TSpeedButton;
    btnCancel: TSpeedButton;
    btnPriview: TSpeedButton;
    btnExit: TSpeedButton;
    pgcDataShow: TPageControl;
    tsInput: TTabSheet;
    tsView: TTabSheet;
    pnlShInput: TPanel;
    dbgrdShowData: TDBGrid;
    qryLblInputHis: TADOQuery;
    N1: TMenuItem;
    RmDBDtStLbl: TRMDBDataSet;
    RmRptLbl: TRMReport;
    RmDsgnrLbl: TRMDesigner;
    RmBarCdeObjlbl: TRMBarCodeObject;
    rmxlsxprt1: TRMXLSExport;
    btnAllDelete: TSpeedButton;
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure mmRbdTblClick(Sender: TObject);
    procedure pmRebuildTablePopup(Sender: TObject);
    procedure lvLabelChange(Sender: TObject; Item: TListItem;
      Change: TItemChange);
    procedure lvLabelChanging(Sender: TObject; Item: TListItem;
      Change: TItemChange; var AllowChange: Boolean);
    procedure btnAddClick(Sender: TObject);
    procedure btnModifyClick(Sender: TObject);
    procedure btnDeleteClick(Sender: TObject);
    procedure btnSaveClick(Sender: TObject);
    procedure btnCancelClick(Sender: TObject);
    procedure btnExitClick(Sender: TObject);
    procedure btnPriviewClick(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure FormKeyPress(Sender: TObject; var Key: Char);
  private
    { Private declarations }
    CurrOpenTblName:String;
    FindInHistory : Boolean;
    procedure SetBtnStatus;
    Procedure setLvLabelData;     //加載標簽數據;
    procedure SetLblInputOpen;
    function  TestTblExists(tblName:string):Boolean;  //測試標簽表是否存在;
    procedure CreateLblTblAndHisTbl(TblName:String);  //創建標簽表和標簽錄入歷史表;
    procedure DeleteTbl(TblName:string);  //刪除指定的表,刪除之前自動測試表是否存在;
    procedure AutoShowInput(TblName:String); //自動創建數據錄入界面控件;
    function  GetQryTmpFldName(LblID:string;out GetFldName : TStringList):Boolean;
                        //獲取表字段列表;
    //說明:MLabel表中的LblID字段,即是關鍵字,也是自動創建表的表名;
    procedure FindItInHistory(Sender:TObject);
    procedure FindHistory(Sender:TObject);
    procedure setDbeditFocus;
  public
    { Public declarations }
  end;

var
  frmOpenLabel: TfrmOpenLabel;

implementation

uses LblDBA;

{$R *.dfm}

procedure TfrmOpenLabel.FormCloseQuery(Sender: TObject;
  var CanClose: Boolean);
var
  i:integer;
begin
  for i:=0 to frmMain.ChildFrm.Count-1 do
    if frmMain.ChildFrm.Strings[i] = Self.Name then
      frmMain.ChildFrm.Delete(i);
  frmOpenLabel := nil;
end;

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

procedure TfrmOpenLabel.FormCreate(Sender: TObject);
begin
  frmMain.ChildFrm.Add(Self.Name);
  setLvLabelData;
end;

procedure TfrmOpenLabel.setLvLabelData;
var
  i:integer;
begin
  with qrytmp do
  begin
    Close;
    SQL.Clear;
    SQL.Add('select * from MLabel');
    Open;
    First;
    lvLabel.Items.Clear;
      for i:=0 to recordcount-1 do
        begin
          lvLabel.Items.Add;
          lvLabel.Items[i].Caption := FieldByName('LblID').AsString;
          lvLabel.Items[i].SubItems.Text := FieldByName('LblName').AsString;
          Next;
        end;
  end;
end;

function TfrmOpenLabel.TestTblExists(tblName:string):Boolean;
var
  sl : TStrings;
  i  : Integer;
begin
  tblName := Trim(tblName);
  Result := False;
  sl := TStringList.Create;
  with qrytmp.Connection do
  begin
    GetTableNames(SL, False);
  end;
  for i := 0 to sl.Count -1 do
    begin
      if Trim(sl[i])=tblName then
        begin
          Result := True;
          exit;
        end;
    end;
end;

procedure TfrmOpenLabel.CreateLblTblAndHisTbl(TblName: String);
var
  CreateTblSQL,FldLst   : TStringList;
  ss :string;
  i  :Integer;
begin
  TblName := Trim(TblName);
  If TestTblExists(TblName) then DeleteTbl(TblName);
  CreateTblSQL := TStringList.Create;
  FldLst := TStringList.Create;
  if GetQryTmpFldName(TblName,FldLst) then
  if FldLst.Count = 0 then
     begin
       ShowMessage('您還沒有定義相應的字段');
       exit;
     end;

  ss := '';
  for i:=0 to FldLst.Count - 1 do
  begin
    ss := ss + FldLst[i]+ ' varChar(30) WITH COMP';
    If i <> FldLst.Count -1 then
       ss := ss +',';
  end;
  ss := 'ID int identity(1,1) not null primary key, ' + ss; 
  ss := ss +',PrtLblNum int';
  
  CreateTblSQL.Add(' Create Table ' + TblName +'('
                  + ss +')' );
  CreateTblSQL.Add(' Create Table ' + TblName +'His('
                  +ss +' )');

  For i:= 0 to CreateTblSQL.Count-1 do
  begin
    with qrytmp do
    begin
      Close;
      SQL.Clear;
      SQL.Add(CreateTblSQL.Strings[i]);
      ExecSQL;
    end;
  end;


end;

procedure TfrmOpenLabel.AutoShowInput(TblName: String);
var
  i:Integer;
  FldLst : TStringlist;
begin
  TblName := Trim(TblName);
  FldLst := TStringList.Create;
  qryLblInput.Close;

  if GetQryTmpFldName(TblName,FldLst) then
     for i:= 0 to FldLst.Count -1 do
         begin
           with TLabel.Create(pnlShInput) do
             begin
               Caption := FldLst[i];
               Name := 'lbl' +intToStr(i);
               Parent := pnlShInput;
               top := Trunc(i/2)*40 + 30 ;
               if (i mod 2) =  0 then
                  Left := 80 - Width
               else
                  left := 340 - Width;

               if i = FldLst.Count-1 then
                 begin
                   with TLabel.Create(pnlShInput) do
                     begin
                       Caption := '打印數量';
                       Name    := 'Lbl'+ IntToStr(i+1);
                       Parent  := pnlShInput;
                       Top := Trunc((i+1)/2)*40 + 30;
                       if ((i+1) mod 2) =  0 then
                          Left := 80 - Width
                       else
                          left := 340 - Width;
                     end;
                 end;

             end;

           with TDBEdit.Create(pnlShInput) do
             begin
               Parent := pnlShInput;
               Name   := 'dbedt'+ IntToStr(i);
               Top    := Trunc(i/2)*40 + 30;
               Width  := 150;
               DataSource := dsLblInput;
               DataField  := fldLst[i];
               if i = 0 then
                 begin
                   OnExit := FinditInHistory;
                   OnDblClick := FindHistory;
                 end;
               if (i mod 2) = 0 then
                 Left := 90
               else
                 left := 350;
             end;

               if i = FldLst.Count-1 then
                 begin
                   with TDBEdit.Create(pnlShInput) do
                     begin
                       Caption := '打印數量';
                       Name    := 'dbedt'+ IntToStr(i+1);
                       Parent  := pnlShInput;
                       Top := Trunc((i+1)/2)*40 + 30;
                       Width := 150;
                       DataSource := dsLblInput;
                       DataField  := 'PrtLblNum';
                       if ((i+1) mod 2) =  0 then
                          Left := 90
                       else
                          left := 350;
                     end;
                 end;
         end;

   with qryLblInput do
   begin
     CurrOpenTblName := TblName;
     SetLblInputOpen;
     pnlBot.Enabled := True;
     setbtnstatus;
   end;
end;

function TfrmOpenLabel.GetQryTmpFldName(LblID:string;out GetFldName : TStringList):Boolean;
var
  i:integer;
begin
  With qrytmp do
  begin
    Close;
    SQL.Clear;
    SQL.Add('select * from  MLblFld where LblID =');
    SQL.Add(QuotedStr(LblID));
    SQL.Add(' order by fldID ');
    Try
      Open;
      Result := True;
    except
      Result := False;
    end;
    for i:=0 to Recordcount -1 do
      begin
        GetFldName.Add(Trim(fieldByName('FldName').AsString));
        next;
      end;
  end;
end;

procedure TfrmOpenLabel.DeleteTbl(TblName: string);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产三级欧美三级日产三级99| 日本不卡在线视频| 日本一区中文字幕 | 成人性视频网站| 91精品国产乱码久久蜜臀| 中文字幕一区二区三区四区| 日韩一区欧美二区| 色狠狠综合天天综合综合| 久久综合五月天婷婷伊人| 手机精品视频在线观看| 97精品国产露脸对白| 久久精品亚洲乱码伦伦中文| 老司机免费视频一区二区| 在线观看不卡视频| 亚洲精品美腿丝袜| 99久久免费视频.com| 久久久噜噜噜久久人人看| 久久精品理论片| 欧美一区二区视频在线观看2022 | 美女视频一区二区三区| 欧美日韩激情一区二区三区| 一区二区在线观看免费| 91在线你懂得| 亚洲人吸女人奶水| 91蝌蚪porny| 亚洲乱码国产乱码精品精可以看| 成人天堂资源www在线| 国产精品无人区| 成人黄色av网站在线| 国产日韩欧美制服另类| 国产美女精品一区二区三区| 精品国产伦理网| 国产精品原创巨作av| 国产日产精品1区| 国产精品99久| 国产欧美精品一区二区色综合| 国产原创一区二区| 欧美极品美女视频| 不卡的av网站| 亚洲一区二区三区自拍| 51精品视频一区二区三区| 日韩国产精品大片| 欧美精品一区二区不卡| 国产999精品久久| 最新久久zyz资源站| 欧美色中文字幕| 久久成人免费网站| 国产欧美日韩另类一区| 97se亚洲国产综合自在线 | 欧美国产日本韩| 成人av影院在线| 天天色天天操综合| 久久夜色精品国产噜噜av| 成人激情小说网站| 亚洲电影一区二区三区| 精品国产免费一区二区三区香蕉| 国产精品一区二区久久精品爱涩 | 精品奇米国产一区二区三区| 国产福利一区二区三区视频在线| 国产精品国产自产拍高清av| 欧美亚洲免费在线一区| 精品影院一区二区久久久| 欧美一区二区视频观看视频| 色综合久久中文综合久久97| 日日骚欧美日韩| 2023国产精品视频| 91福利在线观看| 久久超碰97中文字幕| 亚洲人成在线播放网站岛国| 欧美一卡在线观看| 91丨porny丨在线| 久久超碰97中文字幕| 1024成人网| 欧美精品一区二区在线播放| 色猫猫国产区一区二在线视频| 精品一区二区三区在线播放| 亚洲精品乱码久久久久久久久 | 午夜激情综合网| 国产午夜精品一区二区三区四区 | 92国产精品观看| 日本系列欧美系列| 亚洲综合在线免费观看| 久久久久国产精品麻豆ai换脸| 欧美揉bbbbb揉bbbbb| 成人午夜视频免费看| 久久精品国产成人一区二区三区| 亚洲卡通动漫在线| 欧美激情一区二区三区四区| 日韩一卡二卡三卡国产欧美| 色综合久久久久久久久久久| 国产一区二区三区电影在线观看| 日日夜夜免费精品视频| 亚洲乱码国产乱码精品精可以看 | 丁香六月久久综合狠狠色| 久久精品国产99| 亚洲va国产天堂va久久en| 日韩美女视频一区| 国产精品久久夜| 久久久久久久久久美女| 日韩精品一区在线| 4438x亚洲最大成人网| 欧美丝袜第三区| 日本韩国欧美在线| 色乱码一区二区三区88| 91网站最新网址| 99v久久综合狠狠综合久久| 成人激情校园春色| www.久久久久久久久| 不卡欧美aaaaa| av高清久久久| 91亚洲精品久久久蜜桃| 91首页免费视频| 日本久久电影网| 91国偷自产一区二区开放时间 | 亚洲欧洲av一区二区三区久久| 久久看人人爽人人| 久久久久久久国产精品影院| 久久久精品综合| 中文成人av在线| 亚洲视频小说图片| 一区二区三区欧美在线观看| 一区二区三区不卡在线观看| 亚洲综合男人的天堂| 午夜视频在线观看一区| 日韩精品三区四区| 狠狠色综合色综合网络| 国产超碰在线一区| 99久久精品国产导航| 欧美亚洲尤物久久| 在线成人午夜影院| 久久综合狠狠综合| 国产精品国产三级国产aⅴ入口| 亚洲人成网站在线| 天天色天天操综合| 国产一区二区三区电影在线观看 | 久久99国产精品麻豆| 国产乱码一区二区三区| www.亚洲激情.com| 欧美日韩精品免费观看视频| 日韩欧美国产电影| 最新不卡av在线| 日本美女一区二区| 成人一区二区视频| 欧美手机在线视频| 久久综合狠狠综合久久综合88 | 91福利区一区二区三区| 欧美日韩国产区一| 国产色91在线| 亚洲二区在线观看| 粉嫩久久99精品久久久久久夜 | 欧美r级在线观看| 综合色中文字幕| 蜜臂av日日欢夜夜爽一区| 成人一级黄色片| 欧美一区二区在线视频| 国产精品久久久一区麻豆最新章节| 亚洲国产一二三| 成人午夜视频在线观看| 欧美一区二区啪啪| 亚洲视频在线观看一区| 精品一区二区三区蜜桃| 91麻豆国产精品久久| 久久理论电影网| 韩国女主播成人在线| 国产一区二区在线看| 色老综合老女人久久久| 久久日一线二线三线suv| 亚洲国产日韩a在线播放性色| 久草精品在线观看| 欧美无人高清视频在线观看| 国产蜜臀97一区二区三区| 图片区小说区区亚洲影院| 91丝袜呻吟高潮美腿白嫩在线观看| 欧美电视剧在线看免费| 午夜精彩视频在线观看不卡| 99久久精品免费观看| 国产亚洲制服色| 美国精品在线观看| 777亚洲妇女| 亚洲老司机在线| 91在线播放网址| 国产精品成人在线观看| 国产黄色精品网站| 久久午夜老司机| 激情五月激情综合网| 91精品在线免费观看| 亚洲成人午夜影院| 欧美日韩一区二区欧美激情| 亚洲欧美日韩国产手机在线| 成人在线视频一区二区| 国产午夜亚洲精品不卡| 韩国三级在线一区| 精品乱人伦小说| 精品亚洲免费视频| 欧美成人video| 精品一区中文字幕| 亚洲精品一区二区三区精华液| 免费的成人av| 日韩三级免费观看| 蜜桃视频免费观看一区|