Qt中如何添加UI
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt中如何添加UI相关的知识,希望对你有一定的参考价值。
就是在一个工程中添加一个新的对话框,这个对话框是一个类。现在想用图形界面编辑它。我能新建一个类,但无法新建一个ui。
依次选这几个,就ui和类都有了
参考技术A 你用的是QT4吗?是的话,在QT中新建文件时,选择"qt designer class",即可同时生成类和ui 参考技术B 简单点说,要在QWidget上使用QPainter,需要你定义一个继承自QWidget的类,而你现在这么做也只是相当于在窗口中添加了一个QWidget,但这个窗体没有实际的作用。我写个简单的例子代码,说明怎么用QPainter
widget.h
#ifndef WIDGET_H
#define WIDGET_H
#include <QtGui/QWidget>
#include <QPainter>
class Widget : public QWidget
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
protected:
void paintEvent(QPaintEvent *);
;
#endif // WIDGET_H
widget.cpp
#include "widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
Widget::~Widget()
//重新实现paintEvent
void Widget::paintEvent(QPaintEvent *)
QPainter painter(this);
//绘制一行文字
painter.drawText(this->rect(),Qt::AlignCenter,"this is my widget");
参考技术C 简单点说,要在QWidget上使用QPainter,需要你定义一个继承自QWidget的类,而你现在这么做也只是相当于在窗口中添加了一个QWidget,但这个窗体没有实际的作用。
我写个简单的例子代码,说明怎么用QPainter
widget.h
#ifndef WIDGET_H
#define WIDGET_H
#include <QtGui/QWidget>
#include <QPainter>
class Widget : public QWidget
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
protected:
void paintEvent(QPaintEvent *);
;
#endif // WIDGET_H
widget.cpp
#include "widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
Widget::~Widget()
//重新实现paintEvent
void Widget::paintEvent(QPaintEvent *)
QPainter painter(this);
//绘制一行文字
painter.drawText(this->rect(),Qt::AlignCenter,"this is my widget");
本回答被提问者采纳
QT如何获得对话框中控件的指针?
QT如何获得对话框中控件的指针? 比如获得对话框中一个按钮的指针,VC中的GetDlgItem()可以实现该功能,QT中用什么函数呢。假设按钮是用qt creator拖入的,不是用代码创建的。
qt的ui其实在编译的时候也是生成了一个c++类的,生成类在ui_XXX.h 中,可以通过直接继承的方式来获取ui类里面各控件的指针。qt createor添加ui类时会自动生成一个如 Ui::MainWindow *ui这般的ui指针,通过ui指针即可访问对话框中的控件指针。 参考技术AQT界面都会有一个对应的ui指针,再通过ui执行控件的ObjectName,就是改空间的指针了。
比如界面一个 QPushButton 的名称是 btn,则可以这样获取他的指针 ui->btn
想改变它的text,可以如此 : ui->btn->setText("确定");
以上是关于Qt中如何添加UI的主要内容,如果未能解决你的问题,请参考以下文章