Delphi - cxGrid字段類型設定為ComboBox 並實現動態加載Item


cxGrid設定字段類型為ComboBox

在cxGrid中選中需要設定的字段;

單擊F11調出屬性控制面板,在Properties下拉選項中選中ComboBox,完成字段類型的設定。

 

cxGrid ComboBox類型字段動態賦值,添加Item

動態賦值代碼如下:

1 TcxComboBoxProperties(cxGrid1DBTableView1GROUPNAME.Properties).Items.Text := value;

動態添加Item代碼如下:

procedure ComboAdd(Sender: Tstrings; SQLStr, v_Param: string);
begin
    ComboAddEx(MainForm.OraSession1, Sender, SQLStr, v_Param);
end;

procedure ComboAddEx(v_Session: TOraSession; Sender: Tstrings; SQLStr, v_Param: string);
var
    i, r: Integer;
    Q: ToraQuery;
    S: tstringlist;
begin
    s := tstringlist.Create;
    s.Clear;
    Q := ToraQuery.Create(nil);
    Q.Session := v_Session;
    OpenQuery(Q, SQLStr);
    SetParam(Q, v_Param);
    Q.Open;
    Q.first;
    while not Q.Eof do
    begin
        Sender.Add(Q.Fields[0].AsString);
        Q.next;
    end;
    Q.Close;
    Q.Free;
end;

//動態加載Item
var
    zm: TRzComboBox;
begin
    MainForm.dxBarListWindows.Items.AddObject(Caption, self);
    zm: TRzComboBox;
    zm.Items.Clear;
    ComboAdd(zm.Items, 'select DISTINCT FiledName from TableName t', '');
  TcxComboBoxProperties(cxGrid1DBTableView1FieldName.Properties).Items.Text := zm.Items.Text;
    zm.ItemIndex := 0;
    zm.OnClick(self);
end;

 

  作者:Jeremy.Wu
  出處:https://www.cnblogs.com/jeremywucnblog/
  本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM