我正在尝试访问MainWindow类中私有的ui成员.
我想从gl小部件释放鼠标按钮(鼠标移动量)时更新lineEdit(Xvaldisp).
在搜索了一下之后我发现我需要在mainwindow中创建一个函数/ Method然后通过我的GLWidget中指向Mainwindow的指针来访问它
问题:
lineEdit保持空白,应该更新它的方法(displaymessage())似乎被调用.
要检查我是否已创建一个字符串(str)以查看是否正在调用displaymessage,当调用displaymessage()时,此字符串将使用新值进行更新.
displaymessage()下面的on_Button_clicked()方法也会在单击按钮时更新相同的lineEdit并且工作得很好它会显示str的内容
这是我的代码:
glwidget.h
#ifndef GLWIDGET_H
#define GLWIDGET_H
#include <QGLWidget>
#include <QTimer>
#include <QMouseEvent>
#include "mainwindow.h"
#include <QObject>
#include <QLineEdit>
class GLWidget : public QGLWidget
{
Q_OBJECT
public:
explicit GLWidget(QWidget *parent = 0);
void mousePressEvent(QMouseEvent *e);
void mouseReleaseEvent(QMouseEvent *e);
void initializeGL();
void paintGL();
void resizeGL(int w, int h);
private:
QTimer timer;
QPoint pointMpressed;
QPoint diff;
protected:
signals:
void valueCh();
};
#endif // GLWIDGET_H
Run Code Online (Sandbox Code Playgroud)
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QLineEdit>
#include <QObject> …Run Code Online (Sandbox Code Playgroud)