• 5630阅读
  • 3回复

[提问]关于内存泄露的问题 [复制链接]

上一主题 下一主题
离线chaliks
 
只看楼主 倒序阅读 楼主  发表于: 2012-04-15
[size=; font-size:10pt,10pt][font='Courier']编译成功后,但是却出不来运行的窗口程序
#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QtGui>namespace Ui {    class MainWindow;}class MainWindow : public QMainWindow{    Q_OBJECTpublic:    explicit MainWindow(QWidget *parent = 0);    ~MainWindow();    void mouseMoveEvent(QMouseEvent *);    void keyPressEvent(QKeyEvent *);private:    Ui::MainWindow *ui;};#endif // MAINWINDOW_H
[size=; font-size:10pt,10pt][font='Courier']

#include <QtGui/QApplication>#include "mainwindow.h"#include <QTextCodec>int main(int argc, char *argv[]){    QApplication a(argc, argv);    MainWindow w;    QTextCodec::setCodecForTr(QTextCodec::codecForLocale());    w.show();    return a.exec();}#include "mainwindow.h"#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent) :    QMainWindow(parent),    ui(new Ui::MainWindow){    ui->label->setText(tr("Try to press pushbutton A !"));    ui->pushButton->setText(tr("press one key of the mouse,and then try to move !"));    ui->setupUi(this);}void MainWindow::mouseMoveEvent(QMouseEvent *m){    QCursor my(QPixmap("D:/QtTraining/Event/images01/4601.ico"));    QApplication::setOverrideCursor(my);    int x = m->pos().x();    int y = m->pos().y();    ui->pushButton->setText(tr("mouse's point is (%1,%2),did you get it??").arg(x).arg(y));    ui->pushButton->move(m->pos());}void MainWindow::keyPressEvent(QKeyEvent *k){    if(k->key() == Qt::Key_A)    {        ui->label->setPixmap(QPixmap("D:/QtTraining/Event/images01/4602.ico"));        ui->label->resize(100,100);    }}MainWindow::~MainWindow(){    delete ui;}
[size=; font-size:10pt,10pt][font='Courier']Starting D:\QtTraining\Event\Event-build-desktop\debug\Event.exe...

[size=; font-size:10pt,10pt][font='Courier']D:\QtTraining\Event\Event-build-desktop\debug\Event.exe exited with code -1073741819
[size=; font-size:10pt,10pt][font='Courier']以上问题报错说是内存泄漏的原因!
离线realfan

只看该作者 1楼 发表于: 2012-04-15
ui->setupUi(this); //将这行放在前面试试

ui->label->setText(tr("Try to press pushbutton A !"));
ui->pushButton->setText(tr("press one key of the mouse,and then try to move !"));
离线淳于半邪

只看该作者 2楼 发表于: 2012-04-16
看到这么排序这么乱,就烦
离线congwulong

只看该作者 3楼 发表于: 2012-04-18
能好好排版下吗
快速回复
限100 字节
 
上一个 下一个