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

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: 1 ... 386 387 [388] 389
5806  Qt / Установка, сборка, отладка, тестирование / Не могу собрать Qt [4.3.0] : Июль 23, 2007, 16:55
Цитата: "Icoz"
Почти также коментил pro - собиралось без таких проблем.
Правда я собирал -shared... Со статиком у меня в винде всегда проблемы были.
собирал при помощи mingw идущего в комплекте к devcpp (DevC++)

Дык я тоже через mingw. Побовал не коментить pro файл, не помогло. Улыбающийся
5807  Qt / Установка, сборка, отладка, тестирование / Не могу собрать Qt [4.3.0] : Июль 23, 2007, 16:35
Скачал себе кутю qt-win-opensource-src-4.3.0.zip , распаковал в папку, прописал пути. Создал bat файл такого содержания
Код:

configure -release -static -no-fast -no-exceptions -no-stl -qt-sql-odbc -qt-sql-sqlite -no-qt3support -qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -no-dsp -no-vcproj -no-rtti -no-style-plastique -no-style-cleanlooks -no-style-motif -no-style-cde -platform win32-g++

Изменил pro файл
Код:

.....
#process the projects
for(PROJECT, $$list($$lower($$unique(QT_BUILD_PARTS)))) {
    isEqual(PROJECT, tools) {
       !cross_compile:SUBDIRS += tools
       else:SUBDIRS += tools/qtestlib
#    } else:isEqual(PROJECT, examples) {
#       SUBDIRS += examples
#    } else:isEqual(PROJECT, demos) {
#       SUBDIRS += demos
    } else:isEqual(PROJECT, libs) {
       include(src/src.pro)
    } else:isEqual(PROJECT, qmake) {
#      SUBDIRS += qmake
    } else {
       message(Unknown PROJECT: $$PROJECT)
    }
}

Запускаю bat файл и получаю ошибку, что что-то не продефайнено в файле Qt/4.3.0/src/corelib/global/qconfig.cpp. В файле такая картина
Код:

/* Licensed */
static const char qt_configure_licensee_str          [512 + 12] = "qt_lcnsuser=Open Source";
static const char qt_configure_licensed_products_str [512 + 12] = "qt_lcnsprod=OpenSource";
static const char qt_configure_prefix_path_str       [512 + 12] = "qt_prfxpath=C:\\Qt\\4.3.0";
static const char qt_configure_documentation_path_str[512 + 12] = "qt_docspath=C:/Qt/4.3.0/doc";
static const char qt_configure_headers_path_str      [512 + 12] = "qt_hdrspath=C:/Qt/4.3.0/include";
static const char qt_configure_libraries_path_str    [512 + 12] = "qt_libspath=C:/Qt/4.3.0/lib";
static const char qt_configure_binaries_path_str     [512 + 12] = "qt_binspath=C:/Qt/4.3.0/bin";
static const char qt_configure_plugins_path_str      [512 + 12] = "qt_plugpath=C:/Qt/4.3.0/plugins";
static const char qt_configure_data_path_str         [512 + 12] = "qt_datapath=C:/Qt/4.3.0";
static const char qt_configure_translations_path_str [512 + 12] = "qt_trnspath=C:/Qt/4.3.0/translations";
static const char qt_configure_examples_path_str     [512 + 12] = "qt_xmplpath=C:/Qt/4.3.0/examples";
static const char qt_configure_demos_path_str        [512 + 12] = "qt_demopath=C:/Qt/4.3.0/demos";
/* strlen( "qt_lcnsxxxx" ) == 12 */
#define QT_CONFIGURE_LICENSEE qt_configure_licensee_str + 12;
#define QT_CONFIGURE_LICENSED_PRODUCTS qt_configure_licensed_products_str + 12;
#define QT_CONFIGURE_PREFIX_PATH qt_configure_prefix_path_str + 12;
#define QT_CONFIGURE_DOCUMENTATION_PATH qt_configure_documentation_path_str + 12;
#define QT_CONFIGURE_HEADERS_PATH qt_configure_headers_path_str + 12;
#define QT_CONFIGURE_LIBRARIES_PATH qt_configure_libraries_path_str + 12;
#define QT_CONFIGURE_BINARIES_PATH qt_configure_binaries_path_str + 12;
#define QT_CONFIGURE_PLUGINS_PATH qt_configure_plugins_path_str + 12;
#define QT_CONFIGURE_DATA_PATH qt_configure_data_path_str + 12;
#define QT_CONFIGURE_TRANSLATIONS_PATH qt_configure_translations_path_str + 12;
#define QT_CONFIGURE_EXAMPLES_PATH qt_configure_examples_path_str + 12;
#define QT_CONFIGURE_DEMOS_PATH qt_configure_demos_path_str + 12;
!!!Вот тут что-то не то
lif !defined(QT_NO_STYLE_CLEANLOOKS)
# define QT_NO_STYLE_CLEANLOOKS
#endif

#if defined(QT_NO_STYLE_MOTIF) && defined(QT_STYLE_MOTIF)
# undef QT_NO_STYLE_MOTIF
#elif !defined(QT_NO_STYLE_MOTIF)
# define QT_NO_STYLE_MOTIF
#endif

#if defined(QT_NO_STYLE_PLASTIQUE) && defined(QT_STYLE_PLASTIQUE)
# undef QT_NO_STYLE_PLASTIQUE
#elif !defined(QT_NO_STYLE_PLASTIQUE)
# define QT_NO_STYLE_PLASTIQUE
#endif

#if defined(QT_SQL_ODBC) && defined(QT_NO_SQL_ODBC)
# undef QT_SQL_ODBC
#elif !defined(QT_SQL_ODBC)
# define QT_SQL_ODBC
#endif

#if defined(QT_SQL_SQLITE) && defined(QT_NO_SQL_SQLITE)
# undef QT_SQL_SQLITE
#elif !defined(QT_SQL_SQLITE)
# define QT_SQL_SQLITE
#endif

Далее методом проб и ошибок узнаю, что этот файлик создается в самом начале процесса конфигурирования. Запускаю процесс и, как только создается файлик, изменяю его:
Цитировать

#if defined(QT_NO_STYLE_CLEANLOOKS) && defined(QT_STYLE_CLEANLOOKS)
# undef QT_NO_STYLE_CLEANLOOKS
#elif !defined(QT_NO_STYLE_CLEANLOOKS)
# define QT_NO_STYLE_CLEANLOOKS
#endif

После этого конфигурирование проходит на ура. Начинаю компилить и получаю ошибку в файле Qt/4.3.0/src/gui/kernel/qapplication_win.cpp в функции
Цитировать

static void alert_widget(QWidget *widget, int duration)
{
    if (!pFlashWindowEx) {
        QLibrary themeLib(QLatin1String("user32"));
        pFlashWindowEx  = (PtrFlashWindowEx)themeLib.resolve("FlashWindowEx");
    }

    if (pFlashWindowEx && widget && !widget->isActiveWindow()) {
        DWORD timeOut = GetCaretBlinkTime();
        if (timeOut <= 0)
            timeOut = 250;

        UINT flashCount;
        if (duration <= 0)
            flashCount = 10;
        else
            flashCount = duration/timeOut;

        FLASHWINFO info;
        info.cbSize = sizeof(info);
        info.hwnd = widget->window()->winId();
        info.dwFlags = FLASHW_TRAY;
        info.dwTimeout = timeOut;
        info.uCount = flashCount;

        pFlashWindowEx(&info);
    }
}

Что я делал не так и как мне скомпилить? С 4.2.3 не было никаких проблем.
5808  Qt / Общие вопросы / Переключение раскладки клавы : Июль 21, 2007, 11:27
Кроссплатформенно у меня не получилось, сделал для винды
#ifdef винда
   LoadKeyboardLayout("00000419", KLF_ACTIVATE);
#endif
Если кто знает другой способ, поделитесь пожалуйста.
5809  Qt / Общие вопросы / Переключение раскладки клавы : Июль 19, 2007, 11:43
Как можно кроссплатформенно переключить раскладку на русскую?
5810  Qt / Model-View (MV) / QCheckBox & QTableView : Июль 09, 2007, 11:26
Как закинуть в первую колонку QTableView QCheckBox'ы?
5811  Qt / Общие вопросы / Нулевой размер у гектарного файла : Июнь 26, 2007, 16:26
Цитата: "pastor"
Это оказываеться известная проблема:

http://trolltech.com/developer/task-tracker/index_html?method=entry&id=167099

Цитировать
Since QFileInfo::exists returns false for those files, the size is never queried.

Похоже не скоро этот баг исчезнет. Грустный
Интересно, такое поведение только с pagefile.sys и hiberfil.sys? Или может глюкавить и с другими файлами?
5812  Qt / Общие вопросы / Нулевой размер у гектарного файла : Июнь 26, 2007, 11:37
Спасибо за ответы. Кутя у меня 4.2.3.
Цитировать

А разве не так - QFileInfo qfiFile("c:\\pagefile.sys") должно быть в Винде?

Очепятался. Улыбающийся Вообще у меня "c:/pagefile.sys".
Придется, наверное, через std или winapi действовать. Грустный
5813  Qt / Общие вопросы / Нулевой размер у гектарного файла : Июнь 25, 2007, 11:48
Использую QFileInfo qfiFile("c:\pagefile.sys")
qfiFile.size() равен нулю, хоты своп у меня гектарный.
Я понимаю, что файл заблокирован и т.п., но почему другие проги читают нормально размер?
5814  Qt / Общие вопросы / [Qt:4.2.3] Версия в exe : Июнь 16, 2007, 18:56
Спасибо. А как потом вытащить эту информацию, например, в заголовок программы?
5815  Qt / Общие вопросы / [Qt:4.2.3] Версия в exe : Июнь 16, 2007, 14:44
Цитата: "AlexVR"
Цитата: "panter_dsd"
1. Как указать другие параметры - создатель, компания, имя продукта и пр.

А чем вариант через rc-файл не устраивает? Внём все и указывется.

А можно пример?

добавлено спустя 2 минуты:

 
Цитата: "fanat9"
Вопрос на опережение: может быть сразу попробывать сделать  инсталлятор ?
Вот могу предложить хорошую штуку NSIS - http://nsis.sourceforge.net/Main_Page

А зачем мне делать инсталятор? Версия должна быть вшита в прогу, а не в него.  Кстати, innosetup тоже хорошая вещь.
5816  Qt / Общие вопросы / [Qt:4.2.3] Версия в exe : Июнь 15, 2007, 18:19
Ну наконец-то ответ!!! Я уже думал, что этот пост не закончится. Уже попробовал, все очень хорошо работает. Только теперь еще 2 вопроса по теме:
1. Как указать другие параметры - создатель, компания, имя продукта и пр.
2. Как в куте выловить из файла version-информацию, сегодня весь день в литературе прокопался. но не нашел.
5817  Qt / Печать / Re: [Qt:4.2.3]Печать с разбивкой по странично : Июнь 14, 2007, 11:21
Цитата: "Sergey B."
Цитата: "itan"
В QT ничего готового для этих целей пока не существует, правда есть примерчик ($QTDIR)/demos/textedit, в нем реализована функция Print Preview с последующим выводом на печать, думаю его можно доработать под твои нужды.


QtextDocument прекрасно печатается, и сам разбивается на страницы (пробовал отправлять напрямую на принтер), то что в демке - это просто показ как он на принтер вылезет.

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

Я и пользуюсь QtextDocument, загоняя в него html. Вопрос в другом: как узнать, что справка разрывается и перенести ее на другую страницу?
5818  Qt / Общие вопросы / [Qt:4.2.3] Версия в exe : Июнь 13, 2007, 11:16
Цитата: "Racheengel"
Если студией собираешь, там есть такое в настройках проекта.

Собираю не студией, а QDevelop. Там я такого не нашел. Так как в ресурсах можно установить версию exe?
5819  Qt / Печать / [Qt:4.2.3]Печать с разбивкой по странично : Июнь 13, 2007, 11:15
Цитата: "Racheengel"
Есть OpenReport для этого, поищи в гугле.

Я знаю про его существование, но пользоваться им не хочу, да и резона нет. Разве никто не может что-нибудь кроме этого посоветовать???
5820  Qt / Общие вопросы / [Qt:4.2.3] Версия в exe : Июнь 12, 2007, 19:36
Почему-то не могу найти как добавить в exe версию. Грустный Может не там ищу. Укажите, пожалуйста, путь истинный.
Страниц: 1 ... 386 387 [388] 389

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