Участник:Lit-uriy/Песочница
Материал из Wiki.crossplatform.ru
Lit-uriy (Обсуждение | вклад) (Новая: {| style="text-align:center;border:0; margin-top:1.2em; background-color:#fcfcfc; width:100%;" cellpadding="0" cellspacing="0" | colspan="2" style="border:1px solid #aaa; border-bottom:0...) |
Lit-uriy (Обсуждение | вклад) (→установка Firebird) |
||
(16 промежуточных версий не показаны.) | |||
Строка 1: | Строка 1: | ||
- | + | == из FAQ == | |
- | + | === 1 === | |
- | + | Заголовок у QTableView рисуется нажатым с жирным шрифтом, если выделены все ячейки. Для того, чтобы этого не происходило нужно сделать: | |
- | {| | + | QTableView* qtvTable; |
- | + | qtvTable->horizontalHeader()->highlightSections(false); | |
- | { | + | |
- | + | === установка Firebird === | |
- | + | Устанавливаем firebird в какой-нибудь каталог, не содержащий пробелов и символов кирилицы. Прописываем в переменную PATH путь_к_firebird. В файле Qt/src/sql/drivers/drivers.pri делаем изменение: | |
- | + | {{code|bash|code= | |
- | + | contains(sql-drivers, ibase) { | |
- | + | HEADERS += drivers/ibase/qsql_ibase.h | |
- | + | SOURCES += drivers/ibase/qsql_ibase.cpp | |
- | + | ||
- | + | unix:LIBS *= -lgds | |
- | + | ||
- | + | win32 { | |
- | + | INCLUDEPATH += путь_к_ firebird/include | |
- | + | LIBS += -Lпуть_к_ firebird/lib | |
- | + | !win32-borland:LIBS *= -lfbclient_ms | |
- | + | win32-borland:LIBS += fbclient_bor.lib } | |
- | + | } | |
- | + | ||
- | + | Файл Qt/src/plugins/sqldrivers/ibase/ibase.pro должен быть таким: | |
- | + | TARGET = qsqlibase | |
- | + | ||
- | + | HEADERS = ../../../sql/drivers/ibase/qsql_ibase.h | |
- | + | SOURCES = main.cpp \ | |
- | + | ../../../sql/drivers/ibase/qsql_ibase.cpp | |
- | + | ||
- | + | unix:!contains( LIBS, .*gds.* ):!contains( LIBS, .*libfb.* ):LIBS *= -lgds | |
- | + | ||
- | + | win32:!contains( LIBS, .*gds.* ):!contains( LIBS, .*fbclient.* ) { | |
- | + | INCLUDEPATH += путь_к_ firebird/include | |
- | + | LIBS += -Lпуть_к_ firebird/lib | |
- | + | !win32-borland:LIBS *= -lfbclient_ms | |
- | + | win32-borland:LIBS += fbclient_bor.lib | |
- | + | } | |
- | + | ||
- | + | include(../qsqldriverbase.pri) | |
- | + | }} | |
- | + | ||
- | + | Собираем Qt с опцией конфигурирования -qt-sql-ibase. | |
- | + | ||
- | + | === Как определить систему (Windows/Linux/*BSD/MacOS X)? === | |
- | + | {{code|qt|code= | |
- | + | QString osVersion() | |
- | + | { | |
- | + | static QString osVersion; | |
- | + | if(osVersion.isEmpty()) | |
- | + | { | |
- | + | #if defined(Q_OS_LINUX) | |
- | + | utsname buf; | |
- | {{ | + | if(uname(&buf) != -1) |
- | + | { | |
- | + | osVersion.append(buf.release).append(QLatin1Char(' ')); | |
- | + | osVersion.append(buf.sysname).append(QLatin1Char(' ')); | |
- | + | osVersion.append(buf.machine).append(QLatin1Char(' ')); | |
- | {{ | + | osVersion.append(QLatin1String(" (")).append(buf.machine).append(QLatin1Char(')')); |
- | + | } | |
- | + | else | |
- | + | { | |
- | + | osVersion = QLatin1String("Linux(unknown)"); | |
- | + | } | |
- | + | #elif defined(Q_OS_MAC) | |
- | + | switch(QSysInfo::MacintoshVersion) | |
- | + | { | |
- | + | case QSysInfo::MV_LEOPARD: | |
- | + | osVersion = QLatin1String("MacOS 10.5(Leopard)"); | |
- | + | break; | |
- | + | case QSysInfo::MV_TIGER: | |
- | + | osVersion = QLatin1String("MacOS 10.4(Tiger)"); | |
- | + | break; | |
- | {{ | + | case QSysInfo::MV_PANTHER: |
- | + | osVersion = QLatin1String("MacOS 10.3(Panther)"); | |
- | + | break; | |
- | < | + | case QSysInfo::MV_JAGUAR: |
- | {{ | + | osVersion = QLatin1String("MacOS 10.2(Jaguar)"); |
- | {{ | + | break; |
- | + | case QSysInfo::MV_PUMA: | |
- | + | osVersion = QLatin1String("MacOS 10.1(Puma)"); | |
- | + | break; | |
- | + | case QSysInfo::MV_CHEETAH: | |
- | + | osVersion = QLatin1String("MacOS 10.0(Cheetah)"); | |
- | {{ | + | break; |
- | + | case QSysInfo::MV_9: | |
- | + | osVersion = QLatin1String("MacOS 9"); | |
- | + | break; | |
- | + | case QSysInfo::MV_Unknown: | |
- | + | default: | |
- | + | osVersion = QLatin1String("MacOS(unknown)"); | |
- | + | break; | |
- | + | } | |
- | + | #elif defined(Q_OS_WIN) | |
- | {{ | + | switch(QSysInfo::WindowsVersion) |
- | + | { | |
- | + | case QSysInfo::WV_CE_6: | |
- | + | osVersion = QLatin1String("Windows CE 6.x"); | |
- | + | break; | |
- | + | case QSysInfo::WV_CE_5: | |
- | + | osVersion = QLatin1String("Windows CE 5.x"); | |
- | + | break; | |
- | + | case QSysInfo::WV_CENET: | |
- | + | osVersion = QLatin1String("Windows CE .NET"); | |
- | + | break; | |
- | + | case QSysInfo::WV_CE: | |
- | + | osVersion = QLatin1String("Windows CE"); | |
- | + | break; | |
- | + | case QSysInfo::WV_VISTA: | |
- | + | osVersion = QLatin1String("Windows Vista"); | |
- | + | break; | |
- | + | case QSysInfo::WV_2003: | |
- | + | osVersion = QLatin1String("Windows Server 2003"); | |
- | + | break; | |
- | + | case QSysInfo::WV_XP: | |
- | + | osVersion = QLatin1String("Windows XP"); | |
- | + | break; | |
- | + | case QSysInfo::WV_2000: | |
- | + | osVersion = QLatin1String("Windows 2000"); | |
- | + | break; | |
- | + | case QSysInfo::WV_NT: | |
- | + | osVersion = QLatin1String("Windows NT"); | |
- | + | break; | |
- | + | case QSysInfo::WV_Me: | |
- | + | osVersion = QLatin1String("Windows Me"); | |
- | + | break; | |
- | + | case QSysInfo::WV_98: | |
- | + | osVersion = QLatin1String("Windows 98"); | |
- | + | break; | |
- | + | case QSysInfo::WV_95: | |
- | + | osVersion = QLatin1String("Windows 95"); | |
- | + | break; | |
- | + | case QSysInfo::WV_32s: | |
- | + | osVersion = QLatin1String("Windows 3.1 with Win32s"); | |
- | + | break; | |
- | + | default: | |
- | + | osVersion = QLatin1String("Windows(unknown)"); | |
- | + | break; | |
- | + | } | |
- | + | if(QSysInfo::WindowsVersion & QSysInfo::WV_CE_based) | |
- | + | osVersion.append(QLatin1String(" (CE-based)")); | |
+ | else if(QSysInfo::WindowsVersion & QSysInfo::WV_NT_based) | ||
+ | osVersion.append(QLatin1String(" (NT-based)")); | ||
+ | else if(QSysInfo::WindowsVersion & QSysInfo::WV_DOS_based) | ||
+ | osVersion.append(QLatin1String(" (MS-DOS-based)")); | ||
+ | #else | ||
+ | return QLatin1String("Unknown"); | ||
+ | #endif | ||
+ | } | ||
+ | |||
+ | return osVersion; | ||
+ | } | ||
+ | }} | ||
+ | |||
+ | == Тесты шаблонов == | ||
+ | |||
+ | {{цитата|А, тебе, скотине, патриота не понять!}} | ||
+ | |||
+ | === 2 === | ||
+ | {{Участник:Lit-uriy/статья|[[Изображение:Important-emblem.svg|40px]]|Привет}} | ||
+ | |||
+ | === 3 === | ||
+ | == dll'ки Qt == | ||
+ | === 1 === | ||
+ | Из катлога {{cmd|%QTDIR%/bin/}} необходимо взять dll'ки тех модулей которые вы используете. По умолчанию используются модули QtCore и QtGui (QtCore4.dll и QtGui4.dll, соответственно). И dll'ки других модулей, например, если в pro-файле есть запись: | ||
+ | :: QT += xml | ||
+ | то необходимо взять и QtXml4.dll.<br /> | ||
+ | {{Участник:Lit-uriy/статья|[[Изображение:Important-emblem.svg|20px]]|'''''Заметьте''''', если вы используете отладочную версию своей программы (CONFIG +{{=}} debug), то нужно взять dll'ки с буквой "'''d'''": | ||
+ | :: QtCore'''d'''4.dll, QtGui'''d'''4.dll и QtXml'''d'''4.dll | ||
+ | для примера выше.}} | ||
+ | |||
+ | Эти dll'ки должны быть помещены в один каталог с исполняемым файлом вашего приложения. | ||
+ | |||
+ | === 2 === | ||
+ | Из катлога {{cmd|%QTDIR%/bin/}} необходимо взять dll'ки тех модулей которые вы используете. По умолчанию используются модули QtCore и QtGui (QtCore4.dll и QtGui4.dll, соответственно). И dll'ки других модулей, например, если в pro-файле есть запись: | ||
+ | :: QT += xml | ||
+ | то необходимо взять и QtXml4.dll.<br /> | ||
+ | {{Участник:Lit-uriy/статья|[[Изображение:Important-emblem.svg|30px]]|'''''Заметьте''''', если вы используете отладочную версию своей программы (CONFIG +{{=}} debug), то нужно взять dll'ки с буквой "'''d'''": | ||
+ | :: QtCore'''d'''4.dll, QtGui'''d'''4.dll и QtXml'''d'''4.dll | ||
+ | для примера выше.}} | ||
+ | |||
+ | Эти dll'ки должны быть помещены в один каталог с исполняемым файлом вашего приложения. | ||
+ | |||
+ | === 2 === | ||
+ | Из катлога {{cmd|%QTDIR%/bin/}} необходимо взять dll'ки тех модулей которые вы используете. По умолчанию используются модули QtCore и QtGui (QtCore4.dll и QtGui4.dll, соответственно). И dll'ки других модулей, например, если в pro-файле есть запись: | ||
+ | :: QT += xml | ||
+ | то необходимо взять и QtXml4.dll.<br /> | ||
+ | {{Участник:Lit-uriy/статья|'''''Замечание'''''|Если вы используете отладочную версию своей программы (CONFIG +{{=}} debug), то нужно взять dll'ки с буквой "'''d'''": | ||
+ | :: QtCore'''d'''4.dll, QtGui'''d'''4.dll и QtXml'''d'''4.dll | ||
+ | для примера выше.}} | ||
+ | |||
+ | Эти dll'ки должны быть помещены в один каталог с исполняемым файлом вашего приложения. |
Текущая версия на 15:41, 18 июля 2009
Содержание |
[править] из FAQ
[править] 1
Заголовок у QTableView рисуется нажатым с жирным шрифтом, если выделены все ячейки. Для того, чтобы этого не происходило нужно сделать: QTableView* qtvTable; qtvTable->horizontalHeader()->highlightSections(false);
[править] установка Firebird
Устанавливаем firebird в какой-нибудь каталог, не содержащий пробелов и символов кирилицы. Прописываем в переменную PATH путь_к_firebird. В файле Qt/src/sql/drivers/drivers.pri делаем изменение:
contains(sql-drivers, ibase) { HEADERS += drivers/ibase/qsql_ibase.h SOURCES += drivers/ibase/qsql_ibase.cpp unix:LIBS *= -lgds win32 { INCLUDEPATH += путь_к_ firebird/include LIBS += -Lпуть_к_ firebird/lib !win32-borland:LIBS *= -lfbclient_ms win32-borland:LIBS += fbclient_bor.lib } } Файл Qt/src/plugins/sqldrivers/ibase/ibase.pro должен быть таким: TARGET = qsqlibase HEADERS = ../../../sql/drivers/ibase/qsql_ibase.h SOURCES = main.cpp \ ../../../sql/drivers/ibase/qsql_ibase.cpp unix:!contains( LIBS, .*gds.* ):!contains( LIBS, .*libfb.* ):LIBS *= -lgds win32:!contains( LIBS, .*gds.* ):!contains( LIBS, .*fbclient.* ) { INCLUDEPATH += путь_к_ firebird/include LIBS += -Lпуть_к_ firebird/lib !win32-borland:LIBS *= -lfbclient_ms win32-borland:LIBS += fbclient_bor.lib } include(../qsqldriverbase.pri)
Собираем Qt с опцией конфигурирования -qt-sql-ibase.
[править] Как определить систему (Windows/Linux/*BSD/MacOS X)?
QString osVersion() { static QString osVersion; if(osVersion.isEmpty()) { #if defined(Q_OS_LINUX) utsname buf; if(uname(&buf) != -1) { osVersion.append(buf.release).append(QLatin1Char(' ')); osVersion.append(buf.sysname).append(QLatin1Char(' ')); osVersion.append(buf.machine).append(QLatin1Char(' ')); osVersion.append(QLatin1String(" (")).append(buf.machine).append(QLatin1Char(')')); } else { osVersion = QLatin1String("Linux(unknown)"); } #elif defined(Q_OS_MAC) switch(QSysInfo::MacintoshVersion) { case QSysInfo::MV_LEOPARD: osVersion = QLatin1String("MacOS 10.5(Leopard)"); break; case QSysInfo::MV_TIGER: osVersion = QLatin1String("MacOS 10.4(Tiger)"); break; case QSysInfo::MV_PANTHER: osVersion = QLatin1String("MacOS 10.3(Panther)"); break; case QSysInfo::MV_JAGUAR: osVersion = QLatin1String("MacOS 10.2(Jaguar)"); break; case QSysInfo::MV_PUMA: osVersion = QLatin1String("MacOS 10.1(Puma)"); break; case QSysInfo::MV_CHEETAH: osVersion = QLatin1String("MacOS 10.0(Cheetah)"); break; case QSysInfo::MV_9: osVersion = QLatin1String("MacOS 9"); break; case QSysInfo::MV_Unknown: default: osVersion = QLatin1String("MacOS(unknown)"); break; } #elif defined(Q_OS_WIN) switch(QSysInfo::WindowsVersion) { case QSysInfo::WV_CE_6: osVersion = QLatin1String("Windows CE 6.x"); break; case QSysInfo::WV_CE_5: osVersion = QLatin1String("Windows CE 5.x"); break; case QSysInfo::WV_CENET: osVersion = QLatin1String("Windows CE .NET"); break; case QSysInfo::WV_CE: osVersion = QLatin1String("Windows CE"); break; case QSysInfo::WV_VISTA: osVersion = QLatin1String("Windows Vista"); break; case QSysInfo::WV_2003: osVersion = QLatin1String("Windows Server 2003"); break; case QSysInfo::WV_XP: osVersion = QLatin1String("Windows XP"); break; case QSysInfo::WV_2000: osVersion = QLatin1String("Windows 2000"); break; case QSysInfo::WV_NT: osVersion = QLatin1String("Windows NT"); break; case QSysInfo::WV_Me: osVersion = QLatin1String("Windows Me"); break; case QSysInfo::WV_98: osVersion = QLatin1String("Windows 98"); break; case QSysInfo::WV_95: osVersion = QLatin1String("Windows 95"); break; case QSysInfo::WV_32s: osVersion = QLatin1String("Windows 3.1 with Win32s"); break; default: osVersion = QLatin1String("Windows(unknown)"); break; } if(QSysInfo::WindowsVersion & QSysInfo::WV_CE_based) osVersion.append(QLatin1String(" (CE-based)")); else if(QSysInfo::WindowsVersion & QSysInfo::WV_NT_based) osVersion.append(QLatin1String(" (NT-based)")); else if(QSysInfo::WindowsVersion & QSysInfo::WV_DOS_based) osVersion.append(QLatin1String(" (MS-DOS-based)")); #else return QLatin1String("Unknown"); #endif } return osVersion; }
[править] Тесты шаблонов
![]() | А, тебе, скотине, патриота не понять! | ![]() |
[править] 2
[править] 3
[править] dll'ки Qt
[править] 1
Из катлога %QTDIR%/bin/
необходимо взять dll'ки тех модулей которые вы используете. По умолчанию используются модули QtCore и QtGui (QtCore4.dll и QtGui4.dll, соответственно). И dll'ки других модулей, например, если в pro-файле есть запись:
- QT += xml
то необходимо взять и QtXml4.dll.
Эти dll'ки должны быть помещены в один каталог с исполняемым файлом вашего приложения.
[править] 2
Из катлога %QTDIR%/bin/
необходимо взять dll'ки тех модулей которые вы используете. По умолчанию используются модули QtCore и QtGui (QtCore4.dll и QtGui4.dll, соответственно). И dll'ки других модулей, например, если в pro-файле есть запись:
- QT += xml
то необходимо взять и QtXml4.dll.
Эти dll'ки должны быть помещены в один каталог с исполняемым файлом вашего приложения.
[править] 2
Из катлога %QTDIR%/bin/
необходимо взять dll'ки тех модулей которые вы используете. По умолчанию используются модули QtCore и QtGui (QtCore4.dll и QtGui4.dll, соответственно). И dll'ки других модулей, например, если в pro-файле есть запись:
- QT += xml
то необходимо взять и QtXml4.dll.
Эти dll'ки должны быть помещены в один каталог с исполняемым файлом вашего приложения.