我从初学者开始学习C ++和Qt。阅读其中的一些内容(约10%)后,我编写了一个代码,该代码仅在笔记本电脑屏幕上创建了我的第一个简单小部件。在使用setGeometry(0,0,50,50)的理论中,我可以在屏幕左上方看到小尺寸的小部件。但是,当我运行代码时,大尺寸的小部件会从屏幕中间出来。什么是麻木。如何更正我的代码以在屏幕的左上方看到小尺寸的小部件?
这是我的C ++代码:
#include <QApplication>
#include <QWidget>
class MyWidget : public QWidget{
QWidget w;
public:
MyWidget();
};
MyWidget::MyWidget(){
w.setGeometry(0, 0, 50, 50);
};
int main(int argc, char *argv[]){
QApplication app(argc, argv);
MyWidget mw;
mw.show();
return app.exec();
}
最佳答案
您可以在QWidget w;
类中创建不需要的新MyWidget
。删除它,并将您的构造函数代码更改为:
MyWidget::MyWidget(){
setGeometry(0, 0, 50, 50); // calls function on *this*
};
在原始代码中,没有将
setGeometry
应用于正确的MyWidget
对象,而是未将w
的实例MyWidget
应用于该对象。关于c++ - 如何更正我的代码以在屏幕的左上方看到小尺寸的小部件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42941447/