小编Mug*_*nth的帖子

是否可以在Qt应用程序中使用Win32 Hooks

我想知道是否可以在Qt应用程序中使用win32键盘钩子函数(SetWindowsHookEx,SetWindowsHookEx).

如果可能,请在Qt中使用SetWindowsHookEx,SetWindowsHookEx函数提供示例代码.

// 2010年2月18日更新//

我还没弄明白如何在QT中做到这一点.

但作为一种解决方法,我使用vc ++ express edition创建了一个win32 dll,并将我的钩子命令放在dll函数中.我使用QLibrary类从Qt调用该函数

 /* hearder file code*/
    QLibrary *myLib;
    typedef HHOOK (*MyPrototype)(HINSTANCE);

/* source file code */
    myLib = new QLibrary( "ekhook.dll" );
    MyPrototype myFunction;
    myFunction = (MyPrototype) myLib->resolve( "Init" );
Run Code Online (Sandbox Code Playgroud)

init()是被调用的ekhook.dll中的函数

c++ winapi qt qt4 keyboard-hook

7
推荐指数
2
解决办法
5827
查看次数

是否可以在Qt Quick应用程序中实现SystemTrayIcon功能

我正在写一个QtQuick桌面应用程序.我在其中使用c ++(用于功能)和QML(用于UI).我使用QQuickView来显示用QML编写的界面.

我希望此应用程序在最小化时驻留在系统托盘中.

我的意思是类似于这个例子的功能.http://qt-project.org/doc/qt-4.8/desktop-systray.html.我正在尝试实现此功能,但在我的Qt Quick应用程序中找不到这样做的方法.

这是我的main.cpp代码:

#include <QGuiApplication>
#include <QQmlEngine>
#include <QQmlContext>
#include <QQmlFileSelector>
#include <QQuickView>
#include "myapp.h"

int main(int argc, char* argv[])
{
    QGuiApplication app(argc,argv);
    app.setApplicationName(QFileInfo(app.applicationFilePath()).baseName());
    QDir::setCurrent(qApp->applicationDirPath());

    MyApp myappObject;

    QQuickView view;

    view.connect(view.engine(), SIGNAL(quit()), &app, SLOT(quit()));
    view.rootContext()->setContextProperty("myappObject", &myappObject);
    new QQmlFileSelector(view.engine(), &view);

    view.setSource(QUrl("qrc:///myapp.qml"));

    view.setResizeMode(QQuickView::SizeRootObjectToView);   
    view.show();

    return app.exec();
}
Run Code Online (Sandbox Code Playgroud)

请提供任何提示/指示来帮助您做到这一点.

谢谢.

qt qml qt5 qtquick2

6
推荐指数
2
解决办法
2941
查看次数

Qt 5 ODBC驱动程序问题

我试图在我的一个Qt5项目中使用ODBC驱动程序.

我编译QODBC驱动程序并将驱动程序dll复制到Qt\Qt5.0.0\5.0.0\msvc2010\plugins\sqldrivers文件夹.

当我尝试以下代码时:

 QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

QSqlDatabase: QODBC driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC QODBC3
Run Code Online (Sandbox Code Playgroud)

如果我尝试加载,会遇到相同的错误QODBC3.

即使QODBCQODBC3驱动程序存在,Qt仍然无法加载QODBC驱动程序.

我正在运行Windows 7(64位)PC.

有没有人遇到过这样的错误?什么可能是错的线索?

qt odbc qt5

3
推荐指数
1
解决办法
6294
查看次数

如何在c ++中获取unicode字符的十进制值

对于我的一个开源项目,我需要计算给定unicode字符的十进制等效值.

例如,如果L'?'给出泰米尔语字符,则输出应为2949.

我在Qt环境中使用c ++.我用谷歌搜索,无法找到解决方案.如果您知道解决方案,请提供帮助.

c++ unicode qt4

2
推荐指数
1
解决办法
3510
查看次数

标签 统计

qt ×3

c++ ×2

qt4 ×2

qt5 ×2

keyboard-hook ×1

odbc ×1

qml ×1

qtquick2 ×1

unicode ×1

winapi ×1