crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в qt & Visual studio 2010
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
eldar85 Дата 21.10.2011, 15:48
  пять самых важных либ я закинул в system32 - QtCore4.dll и QtGui4.dll, QtNetwork..., mingw10.dll (или как то так точно не помню названия и libgcc... какая то такая тоже там есть. Все проги написанные на креаторе запускаются без проблем.

подкинул дллку к ехе и все равно ошибка только немного по другому выглядит
Скрин ошибки
RazrFalcon Дата 21.10.2011, 15:36
  В винде не силен, но помойму он не видит либы.
eldar85 Дата 21.10.2011, 15:33
  Пересборка библиотек решила проблему))) Но не совсем. Сигналы слоты соединяются, но при кампиляции релиза выходит такая ошибка


Что это вообще обозначает? Что он не может найти библиотеку в патче или рядом с ехе? но в папке system32 у меня заброшены все необходимые файлы для запуска прог, и в том числе QtCore4.dll и QtGui4.dll. Или в чем то другом проблема?
RazrFalcon Дата 21.10.2011, 15:26
  Может:
Цитата
QObject::connect(&ui.btPushMe, SIGNAL(clicked()), this, SLOT(ShowText()));


BRE, в Qt Creator, при создании нового проекта.
PS: я вообще ui не использую. Я сразу к объекту обращаюсь.
eldar85 Дата 21.10.2011, 14:23
  решил все еще раз перекомпилировать как написано здесь
Установка Qt в VS2010
сижу вот жду когда закончиться, ночью на это ушло часа три где то, но вылезло парочка ошибок. На всякий пожарный решил перекомпилить.
А в консоль ничего не выводилось, как будто и ошибок то нет. Открывается мое окошечко с текст эдитом и кнопкой, пишется в текст эдите один раз то что я вызвал в конструкторе слот
ShowText();

а потом при нажатии на кнопку просто тишина и все. Никаких сообщений в консоли ну и сигнал слот не срабатывает...
BRE Дата 21.10.2011, 14:04
 
Цитата(RazrFalcon @ 21.10.2011, 14:57) *
Ну по дефолту то указатель <_<

О каком дефолте идет речь?
Если ты про примеры, то это личные предпочтения его автора.
Есть три способа внедрения Ui-объекта и у каждого есть свои плюсы и минусы.
Я вообще использую множественное наследование. :)
RazrFalcon Дата 21.10.2011, 13:57
  Ну по дефолту то указатель <_<
BRE Дата 21.10.2011, 13:51
 
Цитата(RazrFalcon @ 21.10.2011, 14:29) *
Парочку замечаний:
1)
Ui::MyClassClass *ui;

Для чего? :) Что бы создавать его руками через new, а потом стараться не забыть его разрушить руками через delete?
RazrFalcon Дата 21.10.2011, 13:29
  В консоль ничего не пишет?

Парочку замечаний:
1)
Ui::MyClassClass *ui;

2) не
QObject::connect(ui.btPushMe, SIGNAL(clicked()), this, SLOT(ShowText()));
ShowText();
а
connect(ui->btPushMe, SIGNAL(clicked()), this, SLOT(ShowText()));
eldar85 Дата 21.10.2011, 13:14
  Добрый день. Раньше программировал в кьти креаторе и не задумывалсячто может возникнуть проблема в подключении сигналов и слотов.
Потом стал программировать на VS и на пол года оставил Qt, но видя какие ужасные интерфейсы получаются на VS решил подключить Qt в VS2010, всю ночь мучался с подключением, установил автоматом Qt c утилитой add_in_vs с офф сайта Qt, но оказалось что это только начало и придется сильно повазиться) но эту мат часть с горем попалам одалел, 3х часавая сборка библиотек с jim.exe и прописывание патчей в переменные среды помогла и вот я уже сделал Qt окно в дизайнере, открыт проект в vs2010, все отлично, но!!!

примерчик то собвственно простой пока, тут только textEdit и кнопочка, просто попробовать все ли работает. В дизайнере кака я понял нельзя щелкнуть правой кнопкой мыши и выбрать перейти к слоту, создал паблик слот в MainWindow, и попробовал сразу из конструктора написать текс в textEdit и отлично написалось.
затем сделал в том же конструкторе коннект кнопки и слоты и тишина... Даже когда пишешь сам конект, обычно вылазиют посказки что мол есть у кнопки такие то слоты и можно выбрать, тут же нет ни одного события которое можно выбрать у кнопки. т.е. я пишу так
QObject::connect(ui.btPushMe, SIGNAL( //и тут уже долны вылезти посказки
но ничего нет, прописал полностью от руки сигнал clicked()
QObject::connect(ui.btPushMe, SIGNAL(clicked()), this, SLOT(ShowText()));

и ничего не происходит при нажатии на кнопку...

ну и для наглядности покажу весь код чтобы более понятно было
#ifndef MYCLASS_H
#define MYCLASS_H

#include <QtGui>
#include "ui_myclass.h"

class MyClass : public QMainWindow
{
    Q_OBJECT

public:
    MyClass(QWidget *parent = 0, Qt::WFlags flags = 0);
    ~MyClass();

private:
    Ui::MyClassClass ui;

public slots:
    void ShowText();
};

#endif // MYCLASS_H

#include "stdafx.h"
#include "myclass.h"

MyClass::MyClass(QWidget *parent, Qt::WFlags flags)
    : QMainWindow(parent, flags)
{
    ui.setupUi(this);

    QObject::connect(ui.btPushMe, SIGNAL(clicked()), this, SLOT(ShowText()));
    ShowText();
}

MyClass::~MyClass()
{

}

void MyClass::ShowText()
{
    ui.textEdit->append("Ura!!!");
}

Как быть? Подскажите пожалуйста. ЗАранее благодарю ;)
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 17.4.2024, 2:35