c ++如何获得系统所有窗口名称 包括隐藏窗口
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c ++如何获得系统所有窗口名称 包括隐藏窗口相关的知识,希望对你有一定的参考价值。
c ++如何获得系统所有窗口名称 包括隐藏窗口
、吗?
该怎么获取,说出方法就Ok了
就是c++呀~~
该函数枚举所有与一个线程相关联的非子窗口,办法是先将句柄传送给每一个窗口,随后传送给应用程序定义的回调函数。EnumThreadWindows函数继续直到所有窗口枚举完为止或回调函数返回FALSE为止。要枚举一个特定窗口的所有子窗口,使用EnumChildWindows函数。
2. EnumWindows
该函数枚举所有屏幕上的顶层窗口,办法是先将句柄传给每一个窗口,然后再传送给应用程序定义的回调函数 参考技术A 你说的是vc还是qt还是别的??
如何在窗口中显示文件夹中所有文件的名称? Qt C++ [关闭]
【中文标题】如何在窗口中显示文件夹中所有文件的名称? Qt C++ [关闭]【英文标题】:How to display the names of all files in a folder in a window? Qt c++ [closed] 【发布时间】:2018-06-25 09:30:29 【问题描述】:在我正在创建的软件中,我有一个窗口,我想在其中列出彼此下方的所有文件。 我尝试了一个解决方案,但与窗口大小相比,列表太小了......我希望列表占据我窗口的所有空间。
这是我的代码:
viewList::viewList()
QString path="/home/myFolder";
QListWidget *listwidget=new QListWidget;
QVBoxLayout *vbox=new QVBoxLayout;
foreach(QString file, files)
listwidget->addItem(file);
vbox->addWidget(listwidget);
this->setLayout(vbox);
et dans le .h :
class viewList : public QWidget
///
有人遇到过这个问题需要解决吗? 谢谢
【问题讨论】:
Get only files but not directories in QT? 的可能重复项vbox->addWidget(listwidget);
在你的循环中,为每个文件在相同的布局中添加相同的小部件是不好的
不,我的问题不完全一样。因为我可以恢复文件。但是当我发布它们时,它们不会占用我窗口的所有空间.....
@Thibaut B. 好的,谢谢。我理解我的错误。我将 vbox->addwidget 放在循环之外...
您不需要为您拥有的每个文件创建一个列表小部件。相反,您必须创建一个列表小部件并使用例如QListWidget::addItem()
函数向其中添加列表items。
【参考方案1】:
解决方案是将这一行 vbox->addWidget(listwidget);
放在循环之外,因为它会为每个文件的相同小部件创建一个布局位置。
这样一来,listWidget 就不能取代父窗口小部件的所有位置。
正确的解决方案:
foreach(QString file, files)
listwidget->addItem(file);
vbox->addWidget(listwidget);
【讨论】:
感谢您的回答。但是我有一个新问题......因为我想在项目 A 文件中添加每次迭代的日期和 QLabel,但我不能做 listwidget->addItem(nameLabel)。 .... @Tom13000,您可以在添加项目时将文件字符串与其他字符串连接起来。如果连接还不够,也许可以实现自己的模型。有关文件信息,请查看QFileInfo 好的,谢谢,但知道每个项目我都需要日期(QString)、文件(QString)和 QLabel。最简单的解决方案是通过 QListWidget 和 QListWidgetItem 吗?我看不到如何连接两个 QString ... 我的问题是我想为每个文件添加它的日期(QString),一个Qlabel和文件名(QString)。 @Tom13000,QLabel 是用来显示文本的,如果在添加项目时连接字符串,则不需要它。以上是关于c ++如何获得系统所有窗口名称 包括隐藏窗口的主要内容,如果未能解决你的问题,请参考以下文章
C#:输出当前用户/ IP /计算机名称等...到标签[重复]