C ++在if语句中访问QString

时间:2014-02-24 00:19:27

标签: c++ qt if-statement

我在Qt中使用C ++,在Qt中你可以编辑程序的外观,所以当用户选择样式时,它会进入样式表并进行编辑,但这就是我的问题所在。是!我正在使用if语句来获取他们从QComboBox和QList中选择的内容,但是当我尝试编辑它时,我无法访问if语句中的QString。所以基本上我想知道它们是否是一种从if语句中访问QString的方法?

我收到错误说:

  

var0未在此范围内声明

示例:

if(2 < 3) {
    QString var0 = "blue";
}

// Problem
qApp->setStyleSheet("QTextEdit { background-color: " + var0 + ";}");

1 个答案:

答案 0 :(得分:1)

var0在if语句的范围内声明,它不会在它之后生效。 (甚至释放QString对象的资源。)您需要在if:

之外声明var0
QString var0;
if(2 < 3) {
    var0 = "blue";
}

// No problem
qApp->setStyleSheet("QTextEdit { background-color: " + var0 + ";}");