elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Llamar Accion con Connect en QT
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Llamar Accion con Connect en QT  (Leído 4,312 veces)
mk_137

Desconectado Desconectado

Mensajes: 120



Ver Perfil
Llamar Accion con Connect en QT
« en: 30 Junio 2010, 15:57 pm »

He estado intentando llamar una accion mediante un boton y un connect, pero no hay manera, no se como quitar el error:
Object::connect: No such slot MainWindow::show_text() in ..\prueba2\mainwindow.cpp:20

Los que ya hay definidos como clear(), close() funcionan perfectamente, pero si es una funcion hecha por mi me dice el error indicado.

Este es el mainwindow.cpp :

Código:
#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

void MainWindow::show_text()
{
       ui->textBrowser->setTextBackgroundColor(QColor(255,100,100,255));
       ui->textBrowser->setText("hola");
}

void MainWindow::prepare_buttons()
{
    this->connect(ui->clearButton,SIGNAL(clicked()),ui->textBrowser,SLOT(clear()));
    this->connect(ui->startButton,SIGNAL(clicked()),this,SLOT(show_text()));
}

MainWindow::~MainWindow()
{
    delete ui;
}


En línea

[L]ord [R]NA


Desconectado Desconectado

Mensajes: 1.513

El Dictador y Verdugo de H-Sec


Ver Perfil WWW
Re: Llamar Accion con Connect en QT
« Respuesta #1 en: 30 Junio 2010, 17:26 pm »

Si muestras el MainWindow.h podria ayudarte... quiero ver si declaraste show_text() como un private slot.


En línea

mk_137

Desconectado Desconectado

Mensajes: 120



Ver Perfil
Re: Llamar Accion con Connect en QT
« Respuesta #2 en: 30 Junio 2010, 17:34 pm »

Si muestras el MainWindow.h podria ayudarte... quiero ver si declaraste show_text() como un private slot.
aaaa... pues no tenia ni idea que se devia declarar de algun modo especial, pensava que podia llamar a una funcion cualquiera.
Ahora busco lo que me has comentado, te pego el MainWindow.h

Código:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>


namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT


public:
    explicit MainWindow(QWidget *parent = 0);
    void show_text();
    void prepare_buttons();
    ~MainWindow();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H

Lh: No hagas doble post!

Muchas gracias Lord.RNA, no sabia que existia esto.

Al final me ha quedado asi y funciona.

Código:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>


namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT


public:
    explicit MainWindow(QWidget *parent = 0);
    void prepare_buttons();
    ~MainWindow();

public slots:
    void show_text();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H
« Última modificación: 30 Junio 2010, 19:36 pm por Littlehorse » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Smart Connect vs Bluetooth
Hardware
Kampfen 0 3,511 Último mensaje 4 Diciembre 2021, 13:22 pm
por Kampfen
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines