Russian Qt Forum

Программирование => Общий => Тема начата: jershell от Ноябрь 13, 2010, 05:57



Название: WinAPI из QT
Отправлено: jershell от Ноябрь 13, 2010, 05:57
Помогите разобраться, как запускать и обрабатывать винапи функции в приложениях написанных с помощью кт?
Побывал писать так:
#include <QtGui>
#include <windows.h>

class WP
{
    Q_OBJECT
    public slots:
   void MsgBox();

};

int main(int argc, char *argv[]){
QApplication app(argc,argv);
QWidget *window = new QWidget;
QHBoxLayout *ptrHL;
QPushButton *ptrButton;
WP winapi;
ptrButton = new QPushButton("WINAPI");
ptrHL = new QHBoxLayout;
ptrHL->addWidget(ptrButton);
window->setWindowTitle("Test WinApi");
window->resize(200,150);
window->setLayout(ptrHL);
window->show();
QObject::connect(ptrButton,SIGNAL(clicked()),&winapi,SLOT(MsgBox()));
return app.exec();
}

void WP::MsgBox(){
MessageBoxA(0,"Text","WinApi",MB_OK);
}


Название: Re: WinAPI из QT
Отправлено: Пантер от Ноябрь 13, 2010, 08:27
1. Не увидел ни одной винапи функции.
2. Вынеси class WP в отдельный хедер.


Название: Re: WinAPI из QT
Отправлено: lit-uriy от Ноябрь 13, 2010, 12:07
класс WP не является наследником QObject, посему совать туда макрос Q_OBJECT и объявлять там слот бессмысленно