transactionthread.h
来自「c++ GUI Programming with QT4书中的源码」· C头文件 代码 · 共 76 行
H
76 行
#ifndef TRANSACTIONTHREAD_H#define TRANSACTIONTHREAD_H#include <QImage>#include <QMutex>#include <QThread>#include <QQueue>class Transaction{public: virtual ~Transaction() { } virtual QImage apply(const QImage &image) = 0; virtual QString message() = 0;};class FlipTransaction : public Transaction{public: FlipTransaction(Qt::Orientation orientation); QImage apply(const QImage &image); QString message();private: Qt::Orientation orientation;};class ResizeTransaction : public Transaction{public: ResizeTransaction(const QSize &size); QImage apply(const QImage &image); QString message();private: QSize size;};class ConvertDepthTransaction : public Transaction{public: ConvertDepthTransaction(int depth); QImage apply(const QImage &image); QString message();private: int depth;};class TransactionThread : public QThread{ Q_OBJECTpublic: void addTransaction(Transaction *transact); void setImage(const QImage &image); QImage image();signals: void transactionStarted(const QString &message);protected: void run();private: QMutex mutex; QImage currentImage; QQueue<Transaction *> transactions;};#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?