Firemonkey:如何使用TScreen.Forms在应用程序中遍历所有表单
Firemonkey: How to iterate through all forms in the application using TScreen.Forms
我正在尝试遍历我在应用程序中打开的表单。我找到了FMX.Forms.TScreen的文档。表单,看起来可以用来完成我的目标。然而,我对我应该如何使用它感到困惑。
首先,我在表单的CPP文件中的一个函数中尝试了这个:
ShowMessage( Forms::TScreen::FormCount );
产生错误'Member TScreen::FormCount cannot be used without an object'
我认为这意味着我需要尝试从我的表单访问这个属性,或者从全局Application
变量。
this->Forms...
Application->Forms...
和
this->TScreen...
Application->TScreen...
然而,Forms
和TScreen
都不存在于这两个对象中。
如何访问Forms.TScreen.Forms
?
错误提示:
成员TScreen::FormCount不能在没有对象
的情况下使用
TScreen
是一个类,而不是对象。FormCount
不是该类的静态成员,因此需要TScreen
类的对象实例。为您提供了这样一个对象—全局Screen
对象:
ShowMessage( Screen->FormCount );
这在文档中有说明:
FMX.Forms.TScreen
有一个类型为
TScreen
的全局变量Screen
,它被实例化以供任何具有GUI的应用程序使用。使用Screen
获取应用程序中屏幕当前状态的信息。
FMX.Forms.Screen
external DELPHI_PACKAGE TScreen* Screen;
效果如下:
ShowMessage(Screen->FormCount);
Screen
是一个全局对象,和Application
一样。编译器说FormCount
不是静态方法或smth.
相关文章:
- 遍历链表时的无限循环
- C++声明双链表,使用两个 for 循环双向遍历列表并打印
- 关于链表遍历和调试的困惑
- 在单链表前面添加一个节点后,我无法遍历每个节点
- 链表遍历跳过值
- 无法遍历链表
- 自定义链表const_iterator无法遍历列表的非const实例
- 在 C++ 中遍历链表比在具有类似内存访问的 Go 中慢
- C++ 遍历链表
- 遍历链表时出现分段错误
- 如何使用单 for 循环遍历 std::map<string>int 和 std::vector<int>?
- 如何在 c++ 中多次遍历链表
- 如何使用迭代器遍历表单 pair<int,pair<int,int>> 的映射
- C++链表遍历和修改
- 如果我们使用链表数组来实现哈希表,则可以以不需要遍历的方式实现"add"。这是真的还是假的?
- 链表的循环遍历
- Lua/C++-在试图遍历表时,在Lua_next()中出现Segfault
- Firemonkey:如何使用TScreen.Forms在应用程序中遍历所有表单
- 在Lua中循环遍历表中的表
- 如何在单遍历中找到单个链表的中间节点(如果链表的长度未给定)