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

C++;在if语句中访问QString 我用C++和QT,在QT中可以编辑程序的外观,所以当用户选择一个样式时,它会进入样式表并编辑它,但这就是我的问题所在!我使用if语句来获取他们从QComboBox和QList中选择的内容,但是当我尝试编辑它时,我无法访问if语句中的QString。所以基本上我想知道它们是否是从if语句中访问QString的一种方法,c++,qt,if-statement,C++,Qt,If Statement,我得到一个错误,说: var0未在此作用域中声明 例如: if(2 < 3) { QString var0 = "blue"; } // Problem qApp->setStyleSheet("QTextEdit { background-color: " + var0 + ";}"); if(2setStyleSheet(“QTextEdit{背景色:+var0+”;}”); var0是在if语句的范围内声明的,它在它之后不存在。(甚至QString对象的资源也被释放

我得到一个错误,说:

var0未在此作用域中声明

例如:

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

// Problem
qApp->setStyleSheet("QTextEdit { background-color: " + var0 + ";}");
if(2<3){
QString var0=“蓝色”;
}
//问题
qApp->setStyleSheet(“QTextEdit{背景色:+var0+”;}”);

var0
是在if语句的范围内声明的,它在它之后不存在。(甚至QString对象的资源也被释放。)您需要在if之外声明
var0

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

// No problem
qApp->setStyleSheet("QTextEdit { background-color: " + var0 + ";}");
QString变量0;
如果(2<3){
var0=“蓝色”;
}
//没问题
qApp->setStyleSheet(“QTextEdit{背景色:+var0+”;}”);

你能显示你的代码吗?如果If语句的条件为false,你希望
setStyleSheet
调用做什么?我有一个
else
语句被设置为none,例如它会说
背景色:none你应该尽量使你的例子尽可能完整,这样我们就不必猜测你可能在想什么。