Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/158.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在ListBox中显示项目,而不需要用户单击(C++ FMX,C++ Builder)?_C++_Listbox_Firemonkey_C++builder_Virtual Functions - Fatal编程技术网

如何在ListBox中显示项目,而不需要用户单击(C++ FMX,C++ Builder)?

如何在ListBox中显示项目,而不需要用户单击(C++ FMX,C++ Builder)?,c++,listbox,firemonkey,c++builder,virtual-functions,C++,Listbox,Firemonkey,C++builder,Virtual Functions,我试图使用SetItemIndex方法以编程方式选择列表框的一项。这是一个虚拟方法,所以我知道我需要重写它,但我不确定它会是什么样子,或者我会把代码放在哪里 或者,我是否应该使用其他方法来显示列表框中的项目已被选中 - 我的应用现在看起来像什么: 如果用户不单击,我希望它看起来像什么: 我用C++ FixMeMFX创建一个应用程序,使用C++ Builder从多个屏幕上获得用户输入。列表框用于向用户显示他们在输入过程中的位置,并提供跳回多个屏幕的功能 如果他们使用“下一步”按钮导航到下一个屏

我试图使用SetItemIndex方法以编程方式选择列表框的一项。这是一个虚拟方法,所以我知道我需要重写它,但我不确定它会是什么样子,或者我会把代码放在哪里

或者,我是否应该使用其他方法来显示列表框中的项目已被选中

-

我的应用现在看起来像什么:

如果用户不单击,我希望它看起来像什么:

我用C++ FixMeMFX创建一个应用程序,使用C++ Builder从多个屏幕上获得用户输入。列表框用于向用户显示他们在输入过程中的位置,并提供跳回多个屏幕的功能

如果他们使用“下一步”按钮导航到下一个屏幕,我希望列表框自动显示所选的相应屏幕

-

以下是我的代码的相关摘录:

class TFormMain : public TForm
{
__published:     // IDE-managed Components
    TListBox     *leftSideBar_listbox;

}

__fastcall TFormMain::TFormMain(TComponent* Owner)
    : TForm(Owner)
{
    leftSideBar_listbox->SetItemIndex(0);
    initializeApp();
}
我得到的错误是:

[bcc32c Error] TFormMain.cpp(29): 'SetItemIndex' is a protected member of 'Fmx::Listbox::TCustomListBox'
  FMX.ListBox.hpp(493): declared protected here
在FMX.ListBox.hpp第493行中:

protected:
...
virtual void __fastcall SetItemIndex(const int Value);
相关文件:

这篇文章是关于C而不是C的++


刚刚意识到我可以像这样设置项目索引:

leftSideBar_listbox->ItemIndex=0;
这是一个虚拟方法,所以我知道我需要重写它-重写它不是你的工作,而是列表框的工作。它确实如此。SetItemIndex是ItemIndex属性的设置程序。您不直接调用setter,而是使用属性,正如您已经发现的那样。