Russian Qt Forum
Ноябрь 23, 2024, 03:05 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: Непоняточка с кнопкой  (Прочитано 9932 раз)
ixtorio
Гость
« : Апрель 06, 2011, 23:17 »

почему когда я обращаюсь к объекту Qt пишет мне 'sendBtn' was not declared in this scope.
я ведь переименовал ее в окне объектов
« Последнее редактирование: Апрель 06, 2011, 23:28 от ixtorio » Записан
Fat-Zer
Гость
« Ответ #1 : Апрель 06, 2011, 23:30 »

код приведите...
Записан
ixtorio
Гость
« Ответ #2 : Апрель 06, 2011, 23:54 »

Код
C++ (Qt)
#include "mainwindow.h"
#include "ui_mainwindow.h"
 
MainWindow::MainWindow(QWidget *parent) :
   QMainWindow(parent),
   ui(new Ui::MainWindow)
{
   ui->setupUi(this);
}
 
MainWindow::~MainWindow()
{
   delete ui;
}
 
void MainWindow::on_sendButton_clicked()
{
   sendButton->text="Tipa knopochka";
}
 
Записан
Fat-Zer
Гость
« Ответ #3 : Апрель 07, 2011, 00:01 »

по меньшей мере
Код
C++ (Qt)
   sendButton->setText(tr("Tipa knopochka"));
ЗЫ: а вообще сигналы и слоты лучше соеденять вручную.
« Последнее редактирование: Апрель 07, 2011, 00:22 от Fat-Zer » Записан
ixtorio
Гость
« Ответ #4 : Апрель 07, 2011, 00:20 »

всеравно таже ошибка , вот новый код
Код
C++ (Qt)
 
#include "mainwindow.h"
#include "ui_mainwindow.h"
 
MainWindow::MainWindow(QWidget *parent) :
   QMainWindow(parent),
   ui(new Ui::MainWindow)
{
   ui->setupUi(this);
}
 
MainWindow::~MainWindow()
{
   delete ui;
}
 
void MainWindow::on_sendButton_clicked()
{
   sendButton->setText(tr("Tipa knopochka"));
}
 
« Последнее редактирование: Апрель 07, 2011, 00:23 от ixtorio » Записан
madRoger
Гость
« Ответ #5 : Апрель 07, 2011, 00:22 »

Цитировать
'sendBtn' was not declared in this scope.

Кнопку не видно, потому-что она принадлежит к ui.

Обращаться к ней нужно соответственно ui->sendBtn....
Записан
ixtorio
Гость
« Ответ #6 : Апрель 07, 2011, 00:23 »

теперь другая ошибка :: error: collect2: ld returned 1 exit status
« Последнее редактирование: Апрель 07, 2011, 00:26 от ixtorio » Записан
madRoger
Гость
« Ответ #7 : Апрель 07, 2011, 00:31 »

Такое бывает, когда уже запущена копия программы... Посмотри в процессах, если есть - убей. Если нет, надо смотреть весь код.
Записан
ixtorio
Гость
« Ответ #8 : Апрель 07, 2011, 00:43 »

вот весь код

mainwindow.cpp:
Код
C++ (Qt)
#include "mainwindow.h"
#include "ui_mainwindow.h"
 
MainWindow::MainWindow(QWidget *parent) :
   QMainWindow(parent),
   ui(new Ui::MainWindow)
{
   ui->setupUi(this);
}
 
MainWindow::~MainWindow()
{
   delete ui;
}
 
void MainWindow::on_sendButton_clicked()
{
   ui->sendButton->setText(tr("Tipa knopochka"));
}
 

main.cpp:
Код
C++ (Qt)
#include <QtGui/QApplication>
#include "mainwindow.h"
 
int main(int argc, char *argv[])
{
   QApplication a(argc, argv);
   MainWindow w;
   w.show();
 
   return a.exec();
}
 
Записан
Fat-Zer
Гость
« Ответ #9 : Апрель 07, 2011, 00:50 »

хедер было бы интересней посмотреть, чем main.cpp.
А вообще лучше выложите весь проект, ибо ошибка скорей всего где-то в форме...
Ещё надо было бы очистить всё... часто бывает, что проблемма в старых объектниках
Записан
madRoger
Гость
« Ответ #10 : Апрель 07, 2011, 00:55 »

У меня все ОК собралось и пашет.

В mainwindow.h естесссно присутствует:

Код:
private slots:
void on_sendButton_clicked();
Записан
ixtorio
Гость
« Ответ #11 : Апрель 07, 2011, 01:00 »

проблема действительно оказалась в хидере, там остался кусок от старого названия кнопки и получилось что он ссылался на несуществующую функцию в коде...всем спасибо , всё работает...

еще один вопросик,как в текстовое поле добавить текст, если там уже имеется ,тоесть не перезаписать ,а присоеденить какбы ,к тому что был...
Записан
madRoger
Гость
« Ответ #12 : Апрель 07, 2011, 01:06 »

QTextEdit::append

UPD: Так же подойдет QTextEdit::insertPlainText
« Последнее редактирование: Апрель 07, 2011, 01:11 от madRoger » Записан
ixtorio
Гость
« Ответ #13 : Апрель 07, 2011, 01:39 »

что нужно вписать ui->textEdit->append(!!!!!!!!!!!СЮДА!!!!!!!); чтоб прочитать текст из другого такого поля , к примеру чтото вроде ui->textEdit2->text .

смотрел здесь http://wiki.crossplatform.ru/index.php/Qt:Документация_4.3.2/qtextedit и ненашел ниче путёвого
Записан
Fess
Гость
« Ответ #14 : Апрель 07, 2011, 05:33 »

QTextEdit::toPlainText()
QTextEdit::toHtml()
и прочитайте уже документацию: http://doc.qt.nokia.com/4.7/qtextedit.html
Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.234 секунд. Запросов: 21.