QString hed = QString("//какой то скрипт"); QString hl = QString("ACT=LISTGET"); QByteArray ba("ACT=LISTGET"); QHttpRequestHeader header = QHttpRequestHeader("POST", hed,1,1); header.setValue("Accept", "*/*"); header.setValue("Content-Type", "application/x-www-form-urlencoded"); header.setValue("Host", "www.какой то сайт"); header.setValue("Content-Length", QString(ba.length())); header.setValue("Accept-Charset", "cp-1251"); header.setValue("Connection", "Keep-Alive"); http->setHost("www.какой то сайт"); http->request(header,ba);
Просмотров:
1334
|
Добавил:
qt-boy
|
Дата:
18.10.2009
|
|
Код: win32:RC_FILE += version.rc
version.rc Код: #ifndef Q_CC_BOR # if defined(UNDER_CE) && UNDER_CE >= 400 # include <winbase.h> # else # include <winver.h> # endif #endif // Q_CC_BOR
VS_VERSION_INFO VERSIONINFO FILEVERSION 0,3,4,0 PRODUCTVERSION 0,3,4,0 FILEFLAGSMASK 0x3fL #ifdef DEBUG FILEFLAGS VS_FF_DEBUG #else FILEFLAGS 0x0L #endif // DEBUG FILEOS VOS__WINDOWS32 FILETYPE VFT_DLL FILESUBTYPE 0x0L BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "040904B0" BEGIN VALUE "CompanyName", "company\0" VALUE "ProductName", "product\0" VALUE "ProductVersion", "0.3.4.0\0" VALUE "FileDescription", "product components.\0" VALUE "FileVersion", "0.3.4.0\0" VALUE "LegalCopyright", "Copyright (C) 2007-2008 company\0" VALUE "OriginalFilename", "lib.dll\0" END END BLOCK "VarFileInfo" BEGIN VALUE "Translat
...
Читать дальше »
Просмотров:
1141
|
Добавил:
qt-boy
|
Дата:
18.10.2009
|
|
В Qt есть недокументированные кроссплатформменные функции qgetenv() и qputenv() для получения и установки переменных окружения.
QByteArray qgetenv(const char *varName); bool qputenv(const char *varName, const QByteArray& value); Language: cpp
Описаны в <QtCore/QtGlobal>
Использовать на свой страх и риск.
Просмотров:
2874
|
Добавил:
qt-boy
|
Дата:
18.10.2009
|
|
В Qt 4.5 если классы, которые используются для поддержки Open Document Format, среди них есть классы для работы с .zip архивами. В документации о них не слова и классы по сути только для внутреннего использования. Нас интересуют классы QZipReader и QZipWriter. Чтобы можно было их использовать надо:
- в .pro файле добавить это: INCLUDEPATH += $(QTDIR)/src/gui/text Language: cpp
- в хедеры прописать пути: #include <Qt/private/qzipreader_p.h> #include <Qt/private/qzipwriter_p.h> #include <qzip.cpp> Language: cpp
Использовать так:
//распаковка архивов QZipReader zip("file.zip"); // загружаем файл zip.extractAll("directory"); // извлекаем все что в нем в папку directory Language: cpp
С сжатием сложнее, но принцип такой:
QZipWriter zip("file.zip"); // создаем файл zip.addDirectory("directory"); // добавляется пустая папка в zip архив с именем directory
...
Читать дальше »
Просмотров:
3398
|
Добавил:
qt-boy
|
Дата:
18.10.2009
|
|
Еще один способ вывода отладочных сообщений для GUI приложений. Позволяет не прописывать CONFIG += console в .pro файле.
На qDebug, qWarning, QFatal будет всплывать диалог, вместо того, чтобы писаться в консоль #if 0 //0 - если надо выключить
QErrorMessage *emsg = new QErrorMessage; emsg->qtHandler(); emsg->showMessage("Hi"); #endif
Просмотров:
1153
|
Добавил:
qt-boy
|
Дата:
18.10.2009
|
|
w.setWindowIcon(qApp->style()->standardIcon(QStyle::SP_ArrowUp)); В Qt есть возможность использовать системные иконки (разные для каждой ОС, определяются динамически). К сожалению в QtDesigner'e почему-то такой возможности нет и подобный метод рассчитан на ручную простановку иконок для каждого элемента. Поможет в этом метод QStyle::standardIcon(). Доступ к методу можно получить через указатель qApp->style()->standardIcon(...); Выбор иконок не велик, но некоторые могут пригодится: http://doc.trolltech.com/main-snapshot/qst...dardPixmap-enu
Просмотров:
1486
|
Добавил:
qt-boy
|
Дата:
18.10.2009
|
|
Также можно регулировать прозрачность любого окошка с помощью метода QWidget::setWindowOpacity(), который принимает в качестве параметра вещественное число, где 1.0 - полная непрозрачность, а 0.0 - полная прозрачность. Соответственно по умолчанию это значение является равным 1.0
Просмотров:
2370
|
Добавил:
qt-boy
|
Дата:
18.10.2009
|
|
1) Если вы не используете потоки. но при этом имеется к примеру большой цикл, то интерфейс приложения может блокироваться и не перерисовывается. Чтобы решить эту проблему можно вызывать метод QApplication::processEvents(); при каждой итерации цикла.
2) Сделать фон любого виджета прозрачным можно так:
listwidget->setFrameShape(QFrame::NoFrame); listwidget->viewport()->setAutoFillBackground(false);
это может пригодится например, если вы пишете плазмоид для kde4 а в плазме пока нет некоторых нативных прозрачных виджетов =)))
Просмотров:
1114
|
Добавил:
qt-boy
|
Дата:
18.10.2009
|
|
Макрос Q_UNUSED позволяет избежать предупреждений по поводу неиспользования какой-то переменной. Пример: void someFunc(int var) { Q_UNUSED(var); //тут мы избавлемся от возможного предупреждения от компилятора }
Просмотров:
9434
|
Добавил:
qt-boy
|
Дата:
18.10.2009
|
| |