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

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: 1 2 3 [4]
46  Qt / Общие вопросы / Re: Создание инсталяшки : Июль 27, 2009, 16:02
может
http://installbuilder.bitrock.com/qt-developers.html
47  Qt / Qt Script, QtWebKit / Re: QVariantMap вскрипт! : Май 13, 2009, 17:06
Цитировать
Default Conversion from C++ to Qt Script

The following table describes the default behavior when a QScriptValue is constructed from a C++ type:
...............
C++ Type   Default Construction
QVariantMap   A new script object (created with QScriptEngine::newObject()), whose properties are initialized according to the (key, value) pairs of the map.
48  Qt / Пользовательский интерфейс (GUI) / Re: QT & css : Апрель 23, 2009, 16:51
Попробуй прикрутить
Цитировать
Setting QObject properties

From 4.3 and above, any designable Q_PROPERTY can be set using the qproperty-<property name> syntax.

For example,

 MyLabel { qproperty-pixmap: url(pixmap.png); }
 MyGroupBox { qproperty-titleColor: rgb(100, 200, 100); }
 QPushButton { qproperty-iconSize: 20px 20px; }
If the property references an enum declared with Q_ENUMS, you should reference its constants by name, i.e., not their numeric value.
49  Qt / Общие вопросы / Re: Кроссплатформенный reboot или shutdown : Апрель 16, 2009, 13:17
Пользую
Выключить комп - команды
Windows
cmd /c shutdown  -s -t 0
Linux
sudo halt  // ест-но права root

Перезагрузить комп - команды
Windows
cmd /c shutdown  -r -t 0
Linux
sudo reboot
50  Qt / Общие вопросы / Re: Определение неактивности пользователя(устройств ввода) : Апрель 16, 2009, 13:11
попробуй.
1. Установить глобальный перехват Events для Application
Код:
	QCoreApplication::instance()->installEventFilter(this);
2. таймер
Код:
	
           int inactiveTime = 60*1000;
           QTimer * timerInactive = new QTimer(this);
connect(timerInactive, SIGNAL(timeout()), this, SIGNAL(inactiveTimeout()));
timerInactive->setInterval(inactiveTime);
timerInactive->start();

3. в процедуре обработки event
Код:
bool MyObject::eventFilter(QObject *obj, QEvent *event)
{
if (event->type() == QEvent::KeyPress || event->type() == QEvent::MouseMove ||
event->type() == QEvent::MouseButtonPress || event->type() == QEvent::MouseButtonRelease)
{
if (timerInactive->isActive())
timerInactive->start();
}
return false;
}

Соответсвенно если в течении inactiveTime мс не нажимались клавиши и не двигалась-клацалачь мышь будет сигнал inactiveTimeout
У меня работает Linux, Win
51  Qt / Базы данных / Re: Сборка QIBASE : Март 11, 2009, 13:13
Посмотри на http://code.google.com/p/qtfirebirdibppsqldriver/
52  Qt / Дополнительные компоненты / Re: qt4 и MS Excel. : Февраль 24, 2009, 12:18
Еще прикольная штука - переименуйте *.html файл в *.xls и откройте в Excel.
53  Qt / Общие вопросы / Re: Помогите составить регулярку. : Февраль 20, 2009, 12:36
Может
Код:
lineEdit->setInputMask("0000000;_");
54  Qt / Базы данных / Re: Транзакции Interbase : Февраль 11, 2009, 15:37
Привет.

Изменил чуть проект для сбоки с компиляторами Microsoft и выложил собранный драйвер под VC 6.0 и 2008.
vipet. Твой вариант с блобом надо пробывать. Насколько помню был нюанс под linux.
http://code.google.com/p/qtfirebirdibppsqldriver
55  Qt / Базы данных / Re: Транзакции Interbase : Февраль 10, 2009, 20:09
ок.
Выложил сырцы в svn и скомпиленный под windows Qt 4.4.3 mingw. IBPP 2.5.3.1.
http://code.google.com/p/qtfirebirdibppsqldriver/

По вопросам стучите сюда.
56  Qt / Базы данных / Re: Транзакции Interbase : Февраль 10, 2009, 19:35
Всем привет.

Проект на гуглокоде     qtfirebirdibppsqldriver
Сейчас исходники закидываю.

>>Можно указывать кодировку базы
>>Код:
>>    db.setConnectOptions("CHARSET=WIN1251");
>>Вот это место у тролей вообще смешное. И вся проблема в том что для одной и той же кодировки в Qt и IB/FB используются разные имена.

Дак это , я думаю можно разрулить прям в db.setConnectOptions(...).

>>P.S. Почему ibpp 2.5.2.0 - просто так или нет? (Я юзаю 2.5.3.1)
драйвер писался для проекта два года назад (Firebird 1.5.*). и на тот момент ibpp была текущая Улыбающийся
проект сдал и сейчас работаю с другими базами, поэтому библу и сам драйвер не пользую.
Скачаю новую и соберу - думаю проблем не будет.
Работает под Linux и Win. Тестил и на Солярисе.
С Firebird 2.* не гонял, надо попробывать.

....
О. собрался и с 2.5.3.1.  Смеющийся ..... и запустился даже  Шокированный




57  Qt / Базы данных / Re: Транзакции Interbase : Февраль 09, 2009, 19:12
Привет.
Есть свой Qt драйвер под Firebird/Interbase/
Писал с использованием IBPP. ( у меня IBPP 2.5.2.0 )
Можно указывать кодировку базы
Код:
    db.setConnectOptions("CHARSET=WIN1251");
Корректная работа с BLOB.
Позволяет указывать тип транзакции.
Код:

#define TRANSACTION(x) (QSqlDatabase::database().driver()->setProperty("Transaction",(x)))
#define TRANS_SELECT "TAM=amRead, TIL=ilReadCommitted, TLR=lrNoWait, TFF=0"
#define TRANS_UPDATE "TAM=amWrite, TIL=ilConcurrency, TLR=lrNoWait, TFF=0"
#define TRANS_REPORT "TAM=amRead, TIL=ilConcurrency, TLR=lrNoWait, TFF=0"
#define TRANS_DEFAULT "TAM=amWrite, TIL=ilConcurrency, TLR=lrWait, TFF=0"
// .............
TRANSACTION(TRANS_SELECT);
QSqlQuery query.prepare(".........



можно через один коннект открывать несколько транзакций.
....

Говори куда положить или закину в google code
58  Qt / Пользовательский интерфейс (GUI) / Re: Как сделать окно AlwaysOnTop и без заголовка? : Январь 30, 2009, 13:26
Код:
#ifdef Q_WS_WIN
#define WFLAGS Qt::Widget
#else
#define WFLAGS Qt::X11BypassWindowManagerHint
#endif

widget->setWindowFlags( Qt::Window | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | WFLAGS );
использую и в Win и в Linux(в том числе и Qtopia с svgalib i directfb)
59  Qt / Пользовательский интерфейс (GUI) / Re: Переместить окно поверх всех : Январь 30, 2009, 13:23
Код:
	
#ifdef Q_WS_WIN
#define WFLAGS Qt::Widget
#else
#define WFLAGS Qt::X11BypassWindowManagerHint
#endif

widget->setWindowFlags( Qt::Window | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | WFLAGS );

использую и в Win и в Linux(в том числе и Qtopia с svgalib i directfb)
60  Qt / Qt Script, QtWebKit / Вопросы с QtScript при переходе с 4.3.* на 4.4.* : Октябрь 02, 2008, 16:55
Словил пару вопросов при переходе на 4.4

1.
Есть объект
--------------------------------------
#ifndef TEST_H
#define TEST_H
#include "abstracttest.h"

#include <QObject>

class Test : public AbstractTest
{
   Q_OBJECT

public:
   Test(QObject *parent);
   ~Test();

public Q_SLOTS:
    int test(const int com);

private:
   
};

#endif // TEST_H

--------------------------------------
соот- но наследник
#ifndef ABSTRACTTEST_H
#define ABSTRACTTEST_H

#include <QObject>

class AbstractTest : public QObject
{
   Q_OBJECT

public:
   AbstractTest(QObject *parent);
   ~AbstractTest();

public Q_SLOTS:
    int test(const int com);
};

#endif // ABSTRACTTEST_H

------------------------------------------
если  я его делаю доступным из скрипта

......
  Test * test = new Test(this);
 QScriptValue objectValue = engine.newQObject((Test *)(test));
 engine.globalObject().setProperty("myObject", objectValue);

и выполняю скрипт

"myObject.test(5);"

то в версии 4.3.* нормально вызывается слот test объекта Test

а в 4.4.* ошибка
"TypeError: ambiguous call of overloaded function test(); candidates were
    test(int)
    test(int)"


но скрипт
myObject.['test(int)'](5);
проходит.

Причем наследуемая функция может и виртуальной быть.
У меня в проекте куча объектов с наследованием - все ругаются при вызове наследованных функций.
Но это ладно. можно во всем скрипте поменять на Объект.[прототип].

2.
В 4.3.* можно было без изменений передать через скрипт любой QVariant.
Пусть есть объект Test .
у его С++ прототипа есть
СЛОТЫ
  QVariant getVariant();
  void setVariant(const QVariant & v);


В 4.3 я мог в скрипте получить
  var data = Test.getVariant();
....
  Test.setVariant(data)
      

а в варианте у меня  QMap c вложенными QMap и QList, эдакая древовидная структура.
и она не изменялась в процессе прибывания в скрипте(Ж:))
если мне надо было ее распарсить в скрипте есть функцайка ...QVariantMap toMap(const QVariant & v)
которая с-но возвращала уже скриптовый Объект и я с ним уже игрался.. Улыбающийся

в 4.4 QVariant сразу преобразуется согласно правил c++ в QtScript и наоборот.

Наверно это и правильно по идее.
Но тогда вопрос - Как иметь возможность передавать неизмененые QMap QList и т.д. но с возможностью и обработки в скрипте.

Разумного и красивого способа пока не получилось Грустный

Прошу прощения за возможную сумбурность изложения....
Страниц: 1 2 3 [4]

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