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

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

?? dbtreeview.pas

?? 藍圖財務進銷存一體化,delphi源碼,使用ACCESS數據庫
?? PAS
字號:
unit DBTreeView;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Base, ComCtrls, ADODB, DB, ImgList, StdCtrls, Buttons;

type
  TDBTreeViewForm = class(TBaseForm)
    TreeView1: TTreeView;
    ADOQuery1: TADOQuery;
    BitBtn1: TBitBtn;
    GroupBox1: TGroupBox;
    Edit1: TEdit;
    GroupBox2: TGroupBox;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    procedure FormCreate(Sender: TObject);
    procedure TreeView1GetImageIndex(Sender: TObject; Node: TTreeNode);
    procedure TreeView1GetSelectedIndex(Sender: TObject; Node: TTreeNode);
    procedure TreeView1Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private
    function LoadCode(ADOQueryTmp : TDataSet):Integer;
    function GetLevel(sFormat,sCode:String):Integer;
    { Private declarations }
  public
    { Public declarations }
  end;

var
  DBTreeViewForm: TDBTreeViewForm;

const
  SCodeFormat = '322222';   //科目代碼結構
  SFirstNodeTxt = '現金銀行帳戶';   //首節點顯示的文字

implementation

uses DataM, SysPublic;

{$R *.dfm}

procedure TDBTreeViewForm.FormCreate(Sender: TObject);
begin
  inherited;
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('Select * From DBTreeView');
  ADOQuery1.Open;
  LoadCode(ADOQuery1);
end;

function TDBTreeViewForm.GetLevel(sFormat, sCode: String): Integer;
var
  i,Level,iLen:Integer;
begin
  Level:=-1;//如果代碼不符合標準,則返回-1
  iLen:=0;
  if (sFormat<>'')and(sCode<>'')then
  for i:=1 to Length(sFormat) do
  begin
    iLen:=iLen+StrToInt(sFormat[i]);
    if Length(sCode)=iLen then
    begin
      Level:=i;
      Break;
    end;
  end;
  Result:=Level;
end;
//上面函數的功能是返回一代碼的級數

//以下函數是本文的重點部分,其主要功能是用一循環將Code.db表中的
//科目代碼和科目代碼名稱顯示出來
function TDBTreeViewForm.LoadCode(ADOQueryTmp: TDataSet): Integer;
var
  NowID,sName,ShowTxt:String;
  i,Level:Integer;
  MyNode:array[0..6]of TTreeNode;
  //保存各級節點,最長支持6級(重點)
begin
  Screen.Cursor:=crHourGlass;
  Level:=0;
  With ADOQueryTmp do
  begin
    try
    if not ADOQueryTmp.Active then Open;
    First;
    TreeView1.Items.Clear;
    //以下是增加第一項
    MyNode[Level]:=TreeView1.Items.Add(TreeView1.TopItem,SFirstNodeTxt);
//    MyNode[Level].ImageIndex:=0;
//    MyNode[Level].SelectedIndex:=0;
    //以上是增加第一項
    While Not ADOQueryTmp.Eof do
    begin
      NowID:=Trim(FieldByName('aCode').AsString);
      ShowTxt:=NowID+' '+FieldByName('aName').AsString;
      Level:=GetLevel(SCodeFormat,NowID);
      //返回代碼的級數
      //以下是增加子項
      //以下用上一級節點為父節點添加子節點
      if Level>0 then//確保代碼符合標準
      begin
        MyNode[Level]:=TreeView1.Items.AddChild(MyNode[Level-1],ShowTxt);
//        MyNode[Level].ImageIndex:=1;
//        MyNode[Level].SelectedIndex:=2;
      end;
    //以上是增加子項
      Next;
    end;
    finally
     Close;
    end;
  end;
  MyNode[0].Expand(False);//將首節點展開
  Screen.Cursor:=crDefault;
end;
//以上函數將Code.db表中的科目代碼和科目代碼名稱顯示出來

procedure TDBTreeViewForm.TreeView1GetImageIndex(Sender: TObject;
  Node: TTreeNode);
begin
  inherited;
 if Node.HasChildren then
        if Node.Expanded then
            Node.ImageIndex := 17   //節點有子節點時打開的圖標
        else
            Node.ImageIndex := 16   //節點有子節點時收起來的圖標
    else Node.ImageIndex := 16;     //節點沒有子節點時圖標
end;

procedure TDBTreeViewForm.TreeView1GetSelectedIndex(Sender: TObject;
  Node: TTreeNode);
begin
  inherited;
  Node.SelectedIndex := Node.ImageIndex;   //節點選擇后使用的圖標
end;

procedure TDBTreeViewForm.TreeView1Click(Sender: TObject);
var
  s, sID, sSql, sFirst, sLast, sCode : string;
  Llevel, iID : integer;
  ADOQryTmp: TADOQuery;
begin
  inherited;
  //選取節點的TEXT
  s := TreeView1.Selected.Text;
  //取出編號
  sID := Trim(Copy(s, 0, Pos(' ', s)-1));
  //娶編號的長度
  Llevel:= Length(sID);

  sFirst:= Copy(sID, 1, Length(sID)-2);


  if lLevel = 3 then
    sSql:= 'Select Max(aCode) as acode From DBTreeView where len(acode)='+IntToStr(Llevel)
  else
    sSql:= 'Select Max(aCode) as aCode From DBTreeView Where aCode like '+QuotedStr(sFirst+'__');

  //把此編號長度的最大值
  ADOQryTmp:= TADOQuery.Create(Nil);
  GetConn(ADOQryTmp);
  ADOQryTmp.Close;
  ADOQryTmp.SQL.Clear;
  ADOQryTmp.SQL.Add(sSql);
  ADOQryTmp.Open;

  sCode:= ADOQryTmp.FieldByName('aCode').AsString;

  Edit2.Text := sFirst;

  sLast:= Copy(sCode, Length(sCode)-1, Length(sCode));

  Edit3.Text:= formatfloat('00',StrToInt(sLast)+1);

  ADOQryTmp.Close;
  ADOQryTmp.Free;
end;

procedure TDBTreeViewForm.BitBtn1Click(Sender: TObject);
var
  ADOQryTmp: TADOQuery;
  s: string;
begin
  inherited;
  s:= Trim(Edit2.Text) + Trim(Edit3.Text);
  ADOQryTmp:= TADOQuery.Create(Nil);
  GetConn(ADOQryTmp);
  ADOQryTmp.Close;
  ADOQryTmp.SQL.Clear;
  ADOQryTmp.SQL.Add('Insert Into DBTreeView(aCode, aName) Values(:aCode, :aName)');
  ADOQryTmp.Parameters.ParamByName('aCode').Value := Trim(s);
  ADOQryTmp.Parameters.ParamByName('aName').Value := Trim(Edit4.Text);
  ADOQryTmp.ExecSQL;

  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add('Select * From DBTreeView');
  ADOQuery1.Open;
  LoadCode(ADOQuery1);

end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品tushy高清| 亚洲欧洲成人精品av97| 风间由美性色一区二区三区| 亚洲综合一区二区三区| 国产亚洲综合性久久久影院| 69久久99精品久久久久婷婷| 欧美中文字幕一区二区三区 | 欧美久久久久久蜜桃| 成人美女在线视频| 国产福利精品导航| 亚洲精品日产精品乱码不卡| 中文字幕一区二区三区视频| 26uuuu精品一区二区| 精品久久久久久亚洲综合网 | 欧美久久一区二区| 在线欧美小视频| 91网站最新网址| 成人美女视频在线观看| 成人晚上爱看视频| 成人晚上爱看视频| 成人国产一区二区三区精品| 国产91精品欧美| 成人黄色av网站在线| 99久久精品情趣| 色香色香欲天天天影视综合网| 91美女在线视频| 在线观看视频91| 欧美亚洲免费在线一区| 在线91免费看| 精品国产乱码久久久久久蜜臀| 亚洲精品一区二区三区蜜桃下载| 欧美成人r级一区二区三区| 欧美mv和日韩mv国产网站| 精品国产免费人成在线观看| 久久久美女毛片| 国产精品国产馆在线真实露脸| 国产清纯白嫩初高生在线观看91 | 国内外成人在线| 成人免费毛片a| 91官网在线观看| 日韩一级完整毛片| 国产亚洲综合性久久久影院| 1区2区3区国产精品| 亚洲与欧洲av电影| 青青草97国产精品免费观看| 免费成人在线观看视频| 国产99久久久国产精品免费看| 在线欧美小视频| 欧美va亚洲va| 亚洲欧洲综合另类在线| 久久国产精品露脸对白| 国产伦精品一区二区三区免费| 97se亚洲国产综合自在线不卡 | 欧美精品一区二区三区蜜桃| 久久久久99精品一区| 亚洲另类一区二区| 免费人成精品欧美精品| 99久久er热在这里只有精品66| 欧美二区三区的天堂| 国产欧美日产一区| 美女一区二区视频| 北条麻妃一区二区三区| 日韩三级.com| 亚洲国产成人av好男人在线观看| 国产精品原创巨作av| 欧美亚洲一区三区| 国产亚洲va综合人人澡精品| 三级不卡在线观看| 99久久久免费精品国产一区二区| 精品少妇一区二区三区视频免付费 | 日本女人一区二区三区| av高清不卡在线| 久久综合色一综合色88| 亚洲不卡在线观看| 国产福利精品导航| 欧美一区二区三区视频免费播放| 中文欧美字幕免费| 久久爱www久久做| 欧美一区二区三区视频在线观看| 亚洲久草在线视频| www.日韩大片| 中文字幕亚洲一区二区av在线 | 久久女同精品一区二区| 三级在线观看一区二区| eeuss鲁一区二区三区| 精品电影一区二区| 激情成人午夜视频| 欧美mv日韩mv| 韩国午夜理伦三级不卡影院| 欧美日韩亚洲综合| 亚洲一二三四区不卡| 在线观看免费成人| 亚洲图片激情小说| 色综合一个色综合亚洲| 中文字幕成人av| 成人18精品视频| 亚洲男人的天堂在线观看| www.欧美色图| 一级中文字幕一区二区| 欧美午夜精品久久久久久超碰| 亚洲人成小说网站色在线| 色婷婷久久综合| 玉足女爽爽91| 9191久久久久久久久久久| 蜜桃免费网站一区二区三区| 日韩欧美一区在线| 国产成人自拍高清视频在线免费播放| 久久久www成人免费无遮挡大片| 国产jizzjizz一区二区| 日韩电影在线看| 2023国产精品| 欧美色老头old∨ideo| 韩国精品在线观看| 亚洲一级不卡视频| 国产日韩高清在线| 欧美一区二区三区思思人| 波波电影院一区二区三区| 日本亚洲电影天堂| 亚洲日穴在线视频| 欧美大片国产精品| 欧美在线你懂的| 国产精品综合视频| 欧美精品一区二区三区一线天视频| 国产盗摄视频一区二区三区| 日韩极品在线观看| 亚洲免费视频中文字幕| 国产亚洲午夜高清国产拍精品| 欧美美女一区二区在线观看| eeuss鲁片一区二区三区在线看| 理论片日本一区| 香蕉乱码成人久久天堂爱免费| 日韩美女精品在线| 中文字幕乱码一区二区免费| 国产精品高清亚洲| 日韩欧美中文字幕公布| 欧美日韩激情在线| 91成人在线精品| 国产精品888| 国产一区二区不卡在线| 蜜桃精品视频在线| 婷婷开心久久网| 亚洲成人免费观看| 午夜久久久久久| 亚洲国产成人av| 亚洲成人1区2区| 午夜国产精品影院在线观看| 伊人一区二区三区| 亚洲精品第一国产综合野| 亚洲欧洲日韩av| 国产精品伦一区| 亚洲视频一二三| 一区二区三区国产| 亚洲综合色在线| 天天色综合成人网| 日韩成人精品在线| 亚洲国产精品麻豆| 亚洲大型综合色站| 亚洲大片在线观看| 蜜臀91精品一区二区三区| 奇米影视一区二区三区| 久久91精品久久久久久秒播| 国产老妇另类xxxxx| 风间由美性色一区二区三区| aaa国产一区| 欧美性色黄大片| 91精品久久久久久久91蜜桃| 精品国产一区a| 国产精品三级久久久久三级| 亚洲天堂a在线| 亚洲电影欧美电影有声小说| 麻豆精品视频在线观看视频| 国产麻豆视频精品| 91香蕉视频黄| 91精品国产综合久久久久久久久久 | 亚洲国产精品成人综合| 亚洲视频免费观看| 丝袜美腿亚洲综合| 国内精品伊人久久久久av影院 | 国产传媒一区在线| 在线播放中文字幕一区| 日韩一级片网址| 欧美经典三级视频一区二区三区| 亚洲欧洲制服丝袜| 蜜桃视频免费观看一区| av一区二区三区| 欧美嫩在线观看| 国产欧美日韩麻豆91| 亚洲第一二三四区| 国产盗摄一区二区| 制服丝袜一区二区三区| 欧美—级在线免费片| 亚洲成人一区二区在线观看| 国产毛片精品视频| 欧美日韩激情在线| 中文字幕日韩一区| 久久国产精品99久久久久久老狼| 91在线精品一区二区| 精品久久久久av影院| 亚洲一区二区偷拍精品| 成人黄色一级视频|