麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

實現在virtualStringtree中編輯的標準步驟

2019-11-18 17:57:05
字體:
來源:轉載
供稿:網友

1.設置TVirtualStringTree屬性:

      toFullRowSelect : false;

      toMultiSelect:false;

       toExtendedFocous:true;

       toEditable:true;

       editDelay:0 //如果不調用editnode,則不會CREATE EDITOR

2.實現virtualStringtree的ONClick事件:
  功能:根據當前獲取焦點的node,判斷是否edit該node

TMMSLibraryForm版本:

PRocedure TMMSLibraryForm.DataTreeClick(Sender: TObject);
var
  Column:TColumnIndex;
  node:PVirtualNode;
begin
  if DataTree.FocusedNode=nil then  Exit;

  node:=DataTree.FocusedNode;
  Column:=DataTree.FocusedColumn;

  if Column<>3 then
     DataTree.EditNode(node,Column);

end;

TSPNumbersForm版本:

procedure TSPNumbersForm.VSTreeSPnumberClick(Sender: TObject);
var
  Column:TColumnIndex;
  node:PVirtualNode;
begin
  if VSTreeSPnumber.FocusedNode=nil then  Exit;

  node:=VSTreeSPnumber.FocusedNode;
  Column:=VSTreeSPnumber.FocusedColumn;

  VSTreeSPnumber.EditNode(node,Column);
end;


TTestNumberForm版本:

procedure TTestNumberForm.VSTreeTestNumberClick(Sender: TObject);
var
  Column:TColumnIndex;
  node:PVirtualNode;
begin
  if VSTreeTestNumber.FocusedNode=nil then  Exit;

  node:=VSTreeTestNumber.FocusedNode;
  Column:=VSTreeTestNumber.FocusedColumn;

  VSTreeTestNumber.EditNode(node,Column);   
end;

3.實現virtualStringtree的ONCreateEditor事件:
  功能:如果editnode被調用,則執行此函數;之前設置editDelay:0,是為避免在不允許改動的node上出現editor

TMMSLibraryForm版本:

procedure TMMSLibraryForm.DataTreeCreateEditor(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: TColumnIndex; out EditLink: IVTEditLink);
begin
   EditLink:=TStringEditLink.create('',stringlist[node.index * 5+Column])
end;


TSPNumbersForm版本:

procedure TSPNumbersForm.VSTreeSPnumberCreateEditor(
  Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex;
  out EditLink: IVTEditLink);
begin
   EditLink:=TStringEditLink.create('',stringlist[node.index * 7+Column]);
end;

TTestNumberForm版本:

procedure TTestNumberForm.VSTreeTestNumberCreateEditor(
  Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex;
  out EditLink: IVTEditLink);
begin
   EditLink:=TStringEditLink.create('',stringlist[node.index * 4+Column]);
end;

4.實現virtualStringtree的ONNewText事件:
  功能:根據獲取焦點的node的column,判斷值的合法性,并同時更新數據庫和stringlist

TMMSLibraryForm版本:

procedure TMMSLibraryForm.DataTreeNewText(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: TColumnIndex; NewText: WideString);
var
  sql:string;
begin
  case Column of
    0:
    begin
      if  (StrToInt64Def(Trim(NewText),-1)=-1) then
      begin
        ShowMessage('"'+Trim(NewText)+'"'+'does not represent a valid number!');
        Exit;
      end;

      sql:='update mmslibrary set MMS_ID='+Trim(NewText)+' where MMS_ID='+Stringlist.strings[node.Index*5];

    end;

    1:
      sql:='update mmslibrary set MMS_Type="'+Trim(NewText)+'" where MMS_ID='+Stringlist.strings[node.Index*5];

    2:
      sql:='update mmslibrary set MMS_Smil="'+Trim(NewText)+'" where MMS_ID='+Stringlist.strings[node.Index*5];

    4:
      sql:='update mmslibrary set MMS_Subject="'+Trim(NewText)+'" where MMS_ID='+Stringlist.strings[node.Index*5];

  end;

  if currentdatabase.ExecuteSqlNoQurey(sql)= 1 then
     ShowMessage('Save to Database sucessfully!')
  else
     ShowMessage('Error occurs while Saving to Database!');

  Stringlist.strings[node.Index*5+Column]:=Trim(NewText);

  DataTree.RootNodeCount:=stringlist.Count div 5 ;
  DataTree.Refresh;
end;

TSPNumbersForm版本:

procedure TSPNumbersForm.VSTreeSPnumberNewText(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: TColumnIndex; NewText: WideString);
var
  sql:string;
begin
  case Column of
    0:
    begin
      if  (StrToInt64Def(Trim(NewText),-1)=-1) then
      begin
        ShowMessage('"'+Trim(NewText)+'"'+'does not represent a valid number!');
        Exit;
      end;

      sql:='update spnumbers set SP_SPID='+Trim(NewText)+' where SP_SPID='+Stringlist.strings[node.Index*7];
    end;
    1:
    sql:='update spnumbers set SP_Name="'+Trim(NewText)+'" where SP_SPID='+Stringlist.strings[node.Index*7];
    2:
    sql:='update spnumbers set SP_Nameforshort="'+Trim(NewText)+'" where SP_SPID='+Stringlist.strings[node.Index*7];
    3:
    sql:='update spnumbers set SP_Operationtype="'+Trim(NewText)+'" where SP_SPID='+Stringlist.strings[node.Index*7];
    4:
    sql:='update spnumbers set SP_Code="'+Trim(NewText)+'" where SP_SPID='+Stringlist.strings[node.Index*7];
    5:
    sql:='update spnumbers set SP_operationcode="'+Trim(NewText)+'" where SP_SPID='+Stringlist.strings[node.Index*7];
    6:
    sql:='update spnumbers set SP_operationName="'+Trim(NewText)+'" where SP_SPID='+Stringlist.strings[node.Index*7];
  end;

  if currentdatabase.ExecuteSqlNoQurey(sql)= 1 then
     ShowMessage('Save to Database sucessfully!')
  else
     ShowMessage('Error occurs while Saving to Database!');

  Stringlist.strings[node.Index*7+Column]:=Trim(NewText);

  VSTreeSPnumber.RootNodeCount:=stringlist.Count div 7 ;
  VSTreeSPnumber.Refresh;
end;

TTestNumberForm版本:

procedure TTestNumberForm.VSTreeTestNumberNewText(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: TColumnIndex; NewText: WideString);
var
  sql:string;
begin
  case Column of
    0:
    begin
      if  (StrToInt64Def(Trim(NewText),-1)=-1) then
      begin
        ShowMessage('"'+Trim(NewText)+'"'+'does not represent a valid number!');
        Exit;
      end;

      sql:='update testnumbers set TN_MSISDN='+Trim(NewText)+' where TN_MSISDN='+Stringlist.strings[node.Index*4];
    end;
    1:
    sql:='update testnumbers set TN_Imsi="'+Trim(NewText)+'" where TN_MSISDN='+Stringlist.strings[node.Index*4];
    2:
    sql:='update testnumbers set TN_Location="'+Trim(NewText)+'" where TN_MSISDN='+Stringlist.strings[node.Index*4];
    3:
    sql:='update testnumbers set TN_Descr  else
     ShowMessage('Error occurs while Saving to Database!');

  Stringlist.strings[node.Index*4+Column]:=Trim(NewText);

  VSTreeTestNumber.RootNodeCount:=stringlist.Count div 4 ;
  VSTreeTestNumber.Refresh;
end;


上一篇:監視資源管理器的文件變化

下一篇:取Run下所有值(原創)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 色七七亚洲 | v片在线看| xxxxhdvideosex | 国产一区二区三区四区五区在线 | 国产精品91久久久 | 一区二区三区欧美日韩 | 爱操视频 | 久久久久久久爱 | 成人激情视频网站 | 黄色av片三级三级三级免费看 | 精品国产呦系列在线看 | 午夜精品福利在线观看 | 依依成人精品视频 | 久久国产精品小视频 | 色综合一区二区 | av电影免费播放 | 久草手机在线 | 黄色午夜剧场 | 99成人在线| 视频在线91 | 国产成人羞羞视频在线 | 色综合777 | 欧美一级欧美 | 色中色激情影院 | 娇喘视频在线观看 | 日韩黄网站 | 毛片视频大全 | 成人羞羞在线观看网站 | 国产手机av在线 | 欧美一级视频免费看 | 美女网站色免费 | 午色影院 | 久久久久久久一区二区三区 | 毛片一区二区三区四区 | 国产精品av久久久久久久久久 | 精品国产九九九 | 国产91免费看 | hdbbwsexvideo| 日本欧美一区二区 | 欧美a∨亚洲欧美亚洲 | www.17c亚洲蜜桃 |