Hola.
Estoy introduciéndome en el entorno de desarrollo de Qt, y me he topado con un problemilla. Estaba haciendo una prueba, un sencillo editor de textos tipo bloc de notas (lo típico, ¿no? jeje). Coloco un QPlaintTextEdit, hago un menú sencillito. La señal del menú salir lo conecto al slot de cerrar de la ventana. Luego modifico el mainwindow.cpp para poder cargar un archivo de texto con el menú abrir. Queda así:
Código:
#include "mainwindow.h" #include "ui_mainwindow.h"
#include <QFileDialog>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(action_Abrir,SIGNAL(activated()),this,SLOT(LeerArchivo()));
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::LeerArchivo()
{
QString Archivo;
Archivo = QFileDialog::getOpenFileName(this, tr("Abrir archivo de texto"), "",
tr("Archivos de texto (*.txt *.text *.wtx);;Archivos INI (*.ini)"));
CampoTexto->loadResource(Archivo);
}
Pero a la hora de compilar, me marca los siguientes errores:
Cita:
'action_Abrir' was not declarated in this scope.
'CampoTexto' was not declarated in this scope.
|
Pero corroboro en el diseñador de interfaz que realmente tienen ese nombre.
¿Qué es lo que pasa?
Saludos.
Edito: por supuesto, en el .h he declarado el slot:
Código:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QtGui/QMainWindow>
namespace Ui
{
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
public slots:
void LeerArchivo();
};
#endif // MAINWINDOW_H