2806
|
Qt / Пользовательский интерфейс (GUI) / Re: QSplitter vs dock
|
: Ноябрь 11, 2009, 13:37
|
не совсем, но спасибо за мысль. Моя задача в общем-то состояла в убирании отрисовки хэндлера (ибо он размером в 1 пиксель не смотрится)Решение: class mySplitter : public QSplitter { public: mySplitter(Qt::Orientation o, QWidget * parent = 0) : QSplitter(o, parent) {} void paintEvent ( QPaintEvent * event ) {} QSplitterHandle *createHandle(); };
class SplitterHandle : public QSplitterHandle { public: SplitterHandle(Qt::Orientation o, QSplitter * parent = 0) : QSplitterHandle(o, parent) {} // QSize sizeHint () const { return QSize(0, 0); } void paintEvent ( QPaintEvent * event ) {} };
QSplitterHandle *mySplitter::createHandle() { return new SplitterHandle(orientation(), this); } Сделать ширину 0 нельзя, тк за него нельзя будет таскать... Собственно черную полоску можно сделать в пейнт эвенте. Но в общем-то вопрос все равно открыт - как сделать сплиттер 0й ширины?) Когда 2 виджета визуально разделены только рамкой
|
|
|
2807
|
Qt / Пользовательский интерфейс (GUI) / Re: QSplitter vs dock
|
: Ноябрь 11, 2009, 12:59
|
break мне наоборот надо чтоб ездили) в том-то и загвоздка. Но вез видимого сплиттера (т.е. черная полоска толщиной в 1 пиксель - фактически сама рамка виджета).
crossly Там не только в стайлшите дало, там же еще кастомные виджеты в заголовок дока встроены
|
|
|
2808
|
Qt / Пользовательский интерфейс (GUI) / QSplitter vs dock
|
: Ноябрь 11, 2009, 12:31
|
Нужно сделать 3 виджета, отделенных друг от друга черной полоской. Сплиттер отказывается ставить ширину хэндла в 0 (сбрасывает на дефолт). Склоняюсь сделать через док виджеты. Ведь в qtCreator'e именно они?
|
|
|
2809
|
Qt / Установка, сборка, отладка, тестирование / Re: Статическая и динамическая сборка библиотек.
|
: Ноябрь 11, 2009, 01:12
|
это пишется в .pro-файл. Никак. Как я уже отмечал выше, она старается линковаться динамически, если динамики нет, пробует статику. Если и ее нет, ругается. Мб этот конфиг помняет порядок - заставит сначала пробовать статику. Но если и сработает, то для всех библиотек проекта
|
|
|
2811
|
Qt / 2D и 3D графика / Re: QT + OpenGL
|
: Ноябрь 10, 2009, 17:30
|
диск - это диск. У него есть поверхность. У окружности поверхности нет, есть только внешняя линия.
|
|
|
2813
|
Qt / Общие вопросы / Re: Спасите!!! файлы Ui
|
: Ноябрь 10, 2009, 17:03
|
просто разные ключи делай (01 - 01строка 1й столбец, 02 - 2й столбец). Еще можно записать строки в QByteArray и хранить только его, и доставать из него же.
|
|
|
2815
|
Qt / Установка, сборка, отладка, тестирование / Re: Статическая и динамическая сборка библиотек.
|
: Ноябрь 10, 2009, 16:31
|
при статике как уже сказано весь код встраивается в твое приложение при динамике в бинарнике только вызовы к dll когда ты собираешь приложение, ты указывашь путь к библиотеке (-Lpath). Если по этому пути лежит .dll то линкуется к динамически ней. Если там есть .а, то идет статик линк. Проверено на вин\мак. Возможно есть способ указать напрямую тип линковки (может быть даже через CONFIG+=static в своем приложении)
|
|
|
2817
|
Qt / Установка, сборка, отладка, тестирование / Re: Оптимизировать код...
|
: Ноябрь 10, 2009, 15:38
|
да, я тоже глянул, там надо модель переделывать... Работы минут на 10, отнаследовавшись от QStringListModel. В том-то и вся фича, что грузить не все, а частями (к примеру Ворд так делает). Заставь лучше того чела сделать аналогично и посмотрите у кого больше кода выйдет
|
|
|
2818
|
Qt / Общие вопросы / Re: Спасите!!! файлы Ui
|
: Ноябрь 10, 2009, 15:36
|
на... и почитай сначала все-таки книжек Каждый раз кол-во итемов удваивается а, да вот это: for(int i = 0; i< widget->topLevelItemCount(); i++) { QString val = widget->topLevelItem(i)->text(0); qDebug() << val; settings.setValue(QString::number(i), val); } не нужно в функции load
|
|
|
2819
|
Qt / Общие вопросы / Re: Спасите!!! файлы Ui
|
: Ноябрь 10, 2009, 15:17
|
ну смотри, ты записал 10 айтемов. Допустим ключ - номер строки тогда при чтении зовешь QStringList keys = childKeys() и получаешь список всех ключей. Говоришь keys.count() - вуаля, 10
|
|
|
|
|