【问题标题】:Delphi: Adding Combobox Dropdown to TADVStringGridDelphi:将组合框下拉列表添加到 TADVStringGrid
【发布时间】:2015-05-05 01:28:07
【问题描述】:

我有一个包含 TADVStringGrid 的表单。我正在尝试将组合框添加到特定列 (2) 中的某些行;但是,我无法让数据显示在下拉列表中。我添加了 HasComboBox 事件,我设置了 DirectComboDrop,但它仍然没有在下拉列表中显示任何数据。他们只是空的。我检查了要添加到下拉列表中的对象,它们有数据。我在这里错过了什么?

procedure UserForm.DisplayGrid(Sender: TObject);
var  
 J      : Integer;
begin
 ... additional logic
 ...  
if OutputList.Count > 2 then
begin
  with UserGrid.Combobox do
       begin
        for J := 0 to OutputList.Count - 1 do
        BEGIN
         if not(OutputList[J] = '') then
         begin
         dValue  :=  DropDownValue.Create;
         dValue.ID := J + 1;
         dvalue.Name      := OutputList[J];
         dvalue.TestValue := OutputList[J] + 'testvalue'; // where value will be a list to choose from
         ListOfTest.Add(dValue); // this is a glabal variable where I for later reference
          ItemIndex := dValue.ID;
         end;
        END;
end;
end;



//event
procedure UserForm.UserGridHasComboBox(Sender: TObject; ACol, ARow: Integer;
  var HasComboBox: Boolean);
begin
  HasComboBox := True;
end;

【问题讨论】:

  • 您是否尝试查看 TMS 网站以获取示例,或搜索他们的论坛以查看以前是否有人问过此问题?
  • 是的,我确实查看了他们的示例。在阅读了他们的一些示例后,我将 HasCombobox 事件和 DirectComboDrop 添加为 true。
  • 您是否尝试在他们的论坛中发布您的问题?他们拥有出色的技术支持,而且他们比我们更了解他们的组件。在您用尽所有其他努力来寻找解决方案之后,这个网站应该是最后的选择。
  • 我已请求获取用于购买产品的用户名和密码。尚未获批;因此,我还无法获得他们的支持。

标签: delphi delphi-2006


【解决方案1】:

需要添加一个名为 EditorProp 的事件句柄。需要为特定列添加的数据必须在调用 EditorProp 事件时添加。下面的一段代码被移到了 editorprop 事件中,从那以后它就可以正常工作了。

for J := 0 to OutputList.Count - 1 do
        BEGIN
         if not(OutputList[J] = '') then
         begin
         dValue  :=  DropDownValue.Create;
         dValue.ID := J + 1;
         dvalue.Name      := OutputList[J];
         dvalue.TestValue := OutputList[J] + 'testvalue'; // where value will be a list to choose from
         ListOfTest.Add(dValue); // this is a glabal variable where I for later reference
          ItemIndex := dValue.ID;
         end;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-20
    • 1970-01-01
    • 1970-01-01
    • 2015-04-14
    • 1970-01-01
    • 1970-01-01
    • 2012-07-21
    • 1970-01-01
    相关资源
    最近更新 更多