如何使用循环访问QLabel中包含的文本?

时间:2013-12-12 06:11:19

标签: qt qlabel

例如,有4个名为label_1label_2label_3label_4的Qlabels。每个都有不同的值,我想使用任何循环逐个访问每个值中包含的值。

1 个答案:

答案 0 :(得分:3)

您应该将这些标签放在像QVector<QLabel*>这样的容器中,而不是给每个标签命名,然后通过循环访问根本不是问题 - 只需通过索引在向量中查找它们。

如果出于某种原因你必须独立声明这四个标签,那么将它们列在另一个类成员之上是没有问题的。

在你班上:

 QVector<QLabel*> labels;

在你的构造函数中:

 // build the four labels
 labels.append(label_1);
 labels.append(label_2);
 ...

迭代他们:

 foreach (QLabel *l, labels) {
   // whatever with l
 }
 for (unsigned i = 0; i < labels.size(); i++) {
   // whatever with labels[i]
 }