windows下编译poppler过程
admin | Qt Gui | 2013-04-15
windows平台下因为在做界面程序中需要显示pdf文件,查询相关资源决定用poppler库来实现,只能从网上得到源代码,需要自己编译生成lib,dll文件,因为它用到很多库,最麻烦的就是编译过程。
平台:windows 编译工具:VS2008
一步一步来吧,从网上下载poppler源代码:http://poppler.freedesktop.org/,我的是poppler-0.18.4
利用CMake来生成VS2008工程... [阅读全文]
Compiling Poppler on Windows
admin | Qt Gui | 2013-04-13
I’ve been struggling trying to install Poppler under Windows, and there is no much information out there. And the few people who claim that works on Windows don’t say how they did it.
Thus, today I will try to guide you on how to make Poppler works on Windows with QT. The goal of this tutorial is to compile the poppler_qt4vie... [阅读全文]
Qt不规则窗体的实现
admin | Qt Gui | 2013-04-04
C++
//shapewidget.h
/*
*@date 2012-11-17
*/
#ifndef __SHAPE_WIDGET_H
#define __SHAPE_WIDGET_H
#include <QWidget>
#include <QMouseEvent>
#include <QPaintEvent>
#include <QPoint>
class ShapeWidget:public QWidget
{
Q_OBJECT
public:
ShapeWidget(QWidget *... [阅读全文]
Windows下提升进程权限
admin | Qt Gui | 2013-04-04
windows的每个用户登录系统后,系统会产生一个访问令牌(access token) ,其中关联了当前用户的权限信息,用户登录后创建的每一个进程都含有用户access token的拷贝,当进程试图执行某些需要特殊权限的操作或是访问受保护的内核对象时,系统会检查其acess token中的权限信息以决定是否授权操作。Administrator组成员的access token中会含有一些... [阅读全文]
计算QPlaintTextEdit当前光标(cursor)的行号
admin | Qt Gui | 2013-04-04
C++
//get the current line number
QTextCursor tc = edit->textCursor();
QTextLayout* lo = tc.block().layout();
//get the relative position in the block
int pos = tc.position() - tc.block().position();
int line = lo->lineForTextPosition(pos).lineNumber() + tc.block().firstLineNumber();
qWarni... [阅读全文]
Qt 解析 JSON 一例
admin | Qt Gui | 2013-04-04
C++
QString http_response =
"{\"key\":\"a99fdd865c2-10000\",\"oid\":1000055,\"expires
\":0000,\"secret\" :\"509c03edfdc7\",\"sign\":\"f0dd9e5226d0e77\"}";
QScriptValue sc;
QScriptEngine engine;
sc = engine.evaluate("value = " + http_response);
QScriptValueIterator it(sc);
while (... [阅读全文]
Qjson 将 QVariant 对象转为 JSON 数据
admin | Qt Gui | 2013-04-04
C++
//cpp
QVariantList people;
QVariantMap bob;
bob.insert("Name", "Bob");
bob.insert("Phonenumber", 123);
QVariantMap alice;
alice.insert("Name", "Alice");
alice.insert("Phonenumber", 321);
people << bob << alice;
QJson::Serializer serializer;
QByteArray json = serializer.seriali... [阅读全文]
Qjson: QObject 对象序列化为 JSON 数据
admin | Qt Gui | 2013-04-04
C++
//Person.h
class Person : public QObject
{
Q_OBJECT
Q_PROPERTY(QString name READ name WRITE setName)
Q_PROPERTY(int phoneNumber READ phoneNumber WRITE setPhoneNumber)
Q_PROPERTY(Gender gender READ gender WRITE setGender)
Q_PROPERTY(QDate dob READ dob WRITE setDob)
Q_ENUMS(Gender)
... [阅读全文]
在windows下的QT编程中的_TCHAR与QString之间的转换
admin | Qt Gui | 2013-04-04
C++
[cce_cpp]
#ifdef UNICODE
#define QStringToTCHAR(x) (wchar_t*) x.utf16()
#define PQStringToTCHAR(x) (wchar_t*) x->utf16()
#define TCHARToQString(x) QString::fromUtf16((x))
#define TCHARToQStringN(x,y) QString::fromUtf16((x),(y))
#else
#define QStringToTCHAR(x) ... [阅读全文]
qt 开机启动
admin | Qt Gui | 2013-03-18
C++
1.修改注册表开机启动
void Utils::setBootEnable(const QString& runPath, bool isMin)
{
QString sApp=runPath;
sApp.replace("/","\");
QSettings *settings = new QSettings("HKEY_LOCAL_MACHINE", QSettings::NativeFormat);
if(settings)
{
QString value;
value = settings->value("SOFTWARE/Micro... [阅读全文]