Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Qt (Trolltech Qt, Nokia Qt, Digia Qt)

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10

Открыть новую тему     Написать ответ в эту тему

KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Офф сайт http://qt.digia.com/


Цитата:
Qt is a complete C++ application framework, including a class library and tools for cross-platform development

 
Qt это библиотека классов и инструментов, полностью реализованый на С++, предназначенная для создания кроссплатформенных приложений.

 
 
Доки:
http://www.opennet.ru/docs/RUS/qt3_prog/ Зеркало: http://linuxcenter.ru/lib/books/qt3/
http://qt.osdn.org.ua/
http://hardclub.donntu.edu.ua/projects/qt/pages/index.htm  
http://www.prog.org.ru/ - Qt форум
...
FAQ:
1.
 
-------
Варез
-------

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 11:23 16-01-2005 | Исправлено: JFK2005, 01:16 22-12-2012
Swappp

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
http://qt.osdn.org.ua/
http://hardclub.donntu.edu.ua/projects/qt/pages/index.htm
 
В FAQ наверно надо добавить, как работать с русским (я по началу долго копался). В общем новички задавайте вопросы Ну и шапку надо прикрутить.

Всего записей: 1716 | Зарегистр. 02-11-2001 | Отправлено: 18:24 16-01-2005
KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добавлено:
Первая проблема: не устанавливается QMsNetSetup.msi для MSVisualStudio 2003.
Пишет, что инсталяция была прервана.
Qt 3.3.3; MSVStudio 2003 + VA + Wise + BoundsChecker.
Вторая проблема: при попытке скомпилировать в том-же MSVisualStudio Qt прогу, выдаётся такаое сообщение:
Цитата:
qt1 error LNK2019: unresolved external symbol _WinMain@16 referenced in function _WinMainCRTStartup
 

Win32 project
Qt include & lib в путях прописаны, линкую с qt-mt333.lib.
 
Добавлено:
Проблема с unresolved external symbol _WinMain@16 referenced in function _WinMainCRTStartup решена: надо было qtmain.lib подключить.
И ещё конфликт с msvcrt.lib, по этому /NODEFAULTLIB:msvcrt.lib
 
Добавлено:
Swappp

Цитата:
как работать с русским

А как? Мне ещё не приходилось.
И под Фрёй 5.3 нет qmake'а, а сам Qt (lib + include) есть.
А либы Qt , скомпилированные Мелко-мягким cl.exe в MinGW компиляторе использовать можно?
И всё-таки с QMsNetSetup.msi вопрос.
 
Добавлено:
Удалось утановить QMsNetSetup.msi, но он ищет include'сы в C:\Qt\3.3.3\include,  а они с E:\Qt\3.3.3\include. Как настроить?

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 20:03 16-01-2005 | Исправлено: KADABRA, 20:45 16-01-2005
Swappp

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KADABRA

Цитата:
Удалось утановить QMsNetSetup.msi, но он ищет include'сы в C:\Qt\3.3.3\include,  а они с E:\Qt\3.3.3\include. Как настроить?

У тебя QTDIR правильно установлена? Попробуй выполнить "echo %QTDIR%" в cmd.

Цитата:
А как? Мне ещё не приходилось.

Повезло Во-первых если хочешь, что бы сообщения интерфейса в CPP файлах были по русски их надо сохранять в UTF-8. Во-вторых если делаешь многоязычную программу, то Qt Linguist это вещь В-третих "QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());" не помешает, иначе будут проблемы с БД не поддерживающими Unicode, я в свое время в поисках этой строчки потратил не мало времени, в итоге помогло, то, что есть исходники Хотя решение получилось не совсем переносимым... т.к. в Linux могут быть локали UTF-8 или KOI8-r, а вот CP1251 врядли, а mysql по умолчанию принимает именно в cp1251... ну в общем RTFM на тему QTextCodec::setCodecForCStrings().
 
Добавлено:

Цитата:
И под Фрёй 5.3 нет qmake'а, а сам Qt (lib + include) есть.

Странно... А как ставил? По плану qmake нужен для сбора самого qt, так что при установки из портов должен быть.

Всего записей: 1716 | Зарегистр. 02-11-2001 | Отправлено: 20:53 16-01-2005
Demetrio

uid=0
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KADABRA
/usr/ports/devel/qmake

Всего записей: 9967 | Зарегистр. 29-05-2002 | Отправлено: 21:24 16-01-2005
WiseAlex



Софтовых дел М...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Для win32
Есть ли возможность статической линковки, т.е. с включением всех импортируемых из qt функций непосредственнов в exe (как в mfc), чтобы не тянуть с собой qt-шную dll

Всего записей: 1001 | Зарегистр. 02-03-2003 | Отправлено: 12:23 17-01-2005
Swappp

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WiseAlex

Цитата:
Есть ли возможность статической линковки, т.е. с включением всех импортируемых из qt функций непосредственнов в exe (как в mfc), чтобы не тянуть с собой qt-шную dll

Если не ошибаюсь есть, во время установки, перед компиляцией можно выбрать компоненты и некоторые параметры сборки в том числе и static/shared. На практике не пробовал.
 
Добавлено:
В инсталляторе пишут:

Цитата:
All applications created with a static library will be at least 1.5MB big. It is not possible to build or use any components or plugins with a static Qt library!

Всего записей: 1716 | Зарегистр. 02-11-2001 | Отправлено: 20:12 17-01-2005 | Исправлено: Swappp, 20:13 17-01-2005
KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Swappp

Цитата:
Попробуй выполнить "echo %QTDIR%" в cmd.  

Спасибо. Поправил.
Demetrio

Цитата:
/usr/ports/devel/qmake

В портах есть, но не установлен по дефолту.
 
Возникло куча траблов с Qt. Но всё по порядку.
1. Какой компилятор лучше для Qt (Win 32) Мелкомягий или MinGW (gpp)?
2. При попытке откомпилировать код (http://linuxcenter.ru/lib/books/qt3/qt3_6.phtml#SUBCLASSINGQDIALOG) выдаётся ошибка типа parrent class QDialog not defined, хотя #include <qdialog.h>
3. При попытке использования QColorDialog::getColor ругается, что e:\WorkSCR\CppSRC\qt1\main.cpp(128): error C2653: 'QColorDialog' : is not a class or namespace name
e:\WorkSCR\CppSRC\qt1\main.cpp(130): error C3861: 'getColor': identifier not found, even with argument-dependent lookup
но #include <qcolordialog.h> ???

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 21:58 17-01-2005
Swappp

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KADABRA

Цитата:
1. Какой компилятор лучше для Qt (Win 32) Мелкомягий или MinGW (gpp)?  

ИМХО MS. Хотя всеравно

Цитата:
2. При попытке откомпилировать код (http://linuxcenter.ru/lib/books/qt3/qt3_6.phtml#SUBCLASSINGQDIALOG) выдаётся ошибка типа parrent class QDialog not defined, хотя #include <qdialog.h>
3. При попытке использования QColorDialog::getColor ругается, что e:\WorkSCR\CppSRC\qt1\main.cpp(128): error C2653: 'QColorDialog' : is not a class or namespace name
e:\WorkSCR\CppSRC\qt1\main.cpp(130): error C3861: 'getColor': identifier not found, even with argument-dependent lookup
но #include <qcolordialog.h> ???

Мог бы и в одну проблему объеденить
А на include не ругается? Как компилируешь? Напиши по подробнее. Похоже, что у тебя не include'тся заголовки.
 
Добавлено:
Но с другой стороны в начале выполняется препроцессор, которы выполняет макросы и по плану его ошибки должны привести к остановки процесса компиляции...
еще в этих заголовках есть такая строчка:

Код:
#ifndef QT_NO_DIALOG
//и
#ifndef QT_NO_COLORDIALOG

Может ты что то не то выбрал при компиляции Qt?

Всего записей: 1716 | Зарегистр. 02-11-2001 | Отправлено: 23:05 17-01-2005 | Исправлено: Swappp, 23:12 17-01-2005
KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Swappp

Цитата:
А на include не ругается?

Нет, компилирую из MSVS все path'ы и lib'ы прописаны.

Цитата:
#ifndef QT_NO_DIALOG
//и
#ifndef QT_NO_COLORDIALOG

есть.
И ещё
Код:
 
#ifndef QT_H
#include "qdialog.h"
#endif // QT_H
 

есть.

Цитата:
Может ты что то не то выбрал при компиляции Qt?

Вроде всё по дефолту

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 10:13 18-01-2005
KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ура! Проблема с  QColorDialog::getColor решена пересборкой Qt.

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 19:17 18-01-2005
Maxer



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
ИМХО MS. Хотя всеравно

На MinGW QT вобще не компилится. Т.е. компилится очень долго

----------
красный феррари

Всего записей: 5225 | Зарегистр. 04-05-2004 | Отправлено: 20:01 18-01-2005
Swappp

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KADABRA

Цитата:
Цитата:
#ifndef QT_NO_DIALOG
//и
#ifndef QT_NO_COLORDIALOG
 
есть.
И ещё
Код:
 
#ifndef QT_H
#include "qdialog.h"
#endif // QT_H
 
 
есть.  

а их и не могло не быть
Я написал, про то, в каких условиях может включатся qdialog.h, но не объявлятся класс...
 
p.s. А никто не хочет шапку прикрутить?

Всего записей: 1716 | Зарегистр. 02-11-2001 | Отправлено: 20:16 18-01-2005
KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Maxer
У меня на MS cl.exe ~ 15-25 мин (Athlon 2500@3200 / 512 DDR 400 RAM).
 
Swappp

Цитата:
а их и не могло не быть  

Я так написал, вдруг qdialog.h не включался
Первый раз просто криво установил.
 

Цитата:
А никто не хочет шапку прикрутить?  

Я ещё вчера Svarg'e запостил
 
Добавлено:
Но... ыыы.   ОбновленияПоследняя запись Выборы Президента Украины 2004 - 31-12-2004 06:15

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 20:43 18-01-2005 | Исправлено: KADABRA, 20:57 18-01-2005
KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А русская дока по Qt socket's есть?

----------
Это не подпись.

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 12:58 23-01-2005
KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ещё дока http://www.opennet.ru/docs/RUS/qt3_prog/

----------
Это не подпись.

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 18:25 27-01-2005
Swappp

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А никто не пробовал делать QToolBar вертикальным, когда он не прелеплен (undock)?
Смотрел исходники Qt и увидел следущее:

Цитата:
Qt::Orientation QDockWindow::orientation() const
{
    if ( dockArea )
return dockArea->orientation();
    if ( ::qt_cast<QToolBar*>(this) )
return Horizontal;
    return ( ((QDockWindow*)this)->boxLayout()->direction() == QBoxLayout::LeftToRight ||
     ((QDockWindow*)this)->boxLayout()->direction() == QBoxLayout::RightToLeft ?
     Horizontal : Vertical );
}

(QToolBar основан на QDockWindow)
т.е. выход вижу один - Copy&Past и переименовать класс orientation() не virtual и вызывается из QDockWindow, так что перезагрузить не получится
В Scribus такое сделанно не очень удачным способом:

Код:
...
connect(this, SIGNAL(placeChanged(QDockWindow::Place)), this, SLOT(Docken(QDockWindow::Place)));
...
void WerkToolB::Docken(QDockWindow::Place p)
{
setOrientation(p == InDock ? Horizontal : Vertical);
}
...

проблема в том, что панель не правильно лепится к правому краю, а если точнее, ее нельзя приблизить к правому краю ближе, чем на ее размер в горизонтальном состоянии.

Всего записей: 1716 | Зарегистр. 02-11-2001 | Отправлено: 20:27 01-02-2005 | Исправлено: Swappp, 20:28 01-02-2005
KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Swappp
Никогда так не экспериментировал.
А у меня снова трабла: не работает элементарный toggled сигнал в на кнопке.

----------
Это не подпись.

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 00:50 06-02-2005
Swappp

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KADABRA

Цитата:
А у меня снова трабла: не работает элементарный toggled сигнал в на кнопке.

А поподробнее? Код хотя бы преведи

Всего записей: 1716 | Зарегистр. 02-11-2001 | Отправлено: 01:57 06-02-2005
KADABRA



Великий покусатель
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Swappp
Есть кнопка moreButton и два groupBox'а:

Код:
 
    connect( moreButton, SIGNAL( toggled(bool) ), secondaryGroupBox, SLOT( setShown(bool) ) );
    connect( moreButton, SIGNAL( toggled(bool) ), tertiaryGroupBox, SLOT( setShown(bool) ) );
 

При нажатии ничего не происходит.
URL: http://www.opennet.ru/docs/RUS/qt3_prog/x801.html
 
Добавлено:
Заработало - поставил на кнопку  

Код:
 
moreButton->setToggleButton( TRUE );
 


----------
Это не подпись.

Всего записей: 1718 | Зарегистр. 14-07-2003 | Отправлено: 11:11 06-02-2005 | Исправлено: KADABRA, 16:03 06-02-2005
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Qt (Trolltech Qt, Nokia Qt, Digia Qt)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru