12 Q_CLASSINFO("ToSuperClass", "ABItem")
13 public:
14 ABItem(QTreeWidget *treeWidget);
15 void setContact(const QString &contact);
16 QString contact const { return text(0); }
17 void setAddress(const QString &address);
18 QString address const { return text(1); }
19 void setPhoneNumber(const QString &number);
20 QString phoneNumber const { return text(2); }
21 public slots:
22 void remove;
23 };
Класс
01 int main(int argc, char *argv[])
02 {
03 QApplication app(argc, argv);
04 if (!QAxFactory::isServer) {
05 AddressBook addressBook;
06 addressBook.show;
07 return app.exec;
08 }
09 return app.exec;
10 }
В функции
Кроме опции
•
•
•
Когда приложение выполняет функции сервера, нам необходимо экспортировать классы
QAXFACTORY_BEGIN("{2b2b6f3e-86cf-4c49-9df5-80483b47f17b}",
"{8e827b25-148b-4307-ba7d-23f275244818}")
QAXCLASS(AddressBook)
QAXTYPE(ABItem)
QAXFACTORY_END
Приведенные выше макросы экспортируют фабрику классов для создания объектов СОМ. Поскольку мы собираемся экспортировать два типа объектов СОМ, мы не можем просто использовать макрос
Первым аргументом макроса
Ниже приводится файл
TEMPLATE = app
CONFIG += qaxserver
HEADERS = abitem.h \
addressbook.h \
editdialog.h
SOURCES = abitem.cpp \
addressbook.cpp \
editdialog.cpp \
main.cpp
FORMS = editdialog.ui
RC_FILE = qaxserver.rc
Файл
Вы можете посмотреть в каталоге примеров
Этим мы завершаем наш обзор рабочей среды ActiveQt. Дистрибутив Qt включает дополнительные примеры, и в документации содержится информация о способах построения модулей
Управление сеансами в системе X11
Когда мы выходим из системы X11, некоторые оконные менеджеры спрашивают нас о необходимости сохранения сеанса. Если мы отвечаем утвердительно, то при следующем входе в систему работа приложений будет автоматически возобновлена с того же экрана и, в идеальном случае, с того же состояния, которое было во время выхода из системы.