1 Star 0 Fork 0

zhyulo/FileTreeViewer

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
hexwidget.h 1.38 KB
一键复制 编辑 原始数据 按行查看 历史
#ifndef HEXWIDGET_H
#define HEXWIDGET_H
#include <QAbstractScrollArea>
class HexWidget : public QAbstractScrollArea
{
Q_OBJECT
signals:
void onSelect(qint64 pos);
public:
HexWidget(QWidget *parent);
~HexWidget();
void setData(const QByteArray &data);
void setSelect(qint64 pos, int len);
QByteArray getSelectData();
qint64 findBytes(const QByteArray &data, bool next);
protected:
// Handle events
QSize sizeHint() const;
void mousePressEvent(QMouseEvent * event);
void paintEvent(QPaintEvent *event);
void resizeEvent(QResizeEvent *);
void changeEvent(QEvent *event);
private:
void init();
// Ensure the cursor to be visbile
void ensureSelectVisible();
private:
QByteArray m_data;
qint64 m_size;
qint64 m_selectPosition;
int m_selectSize;
int m_descent;
int m_ascent;
int m_lineHeight; // 每行高度
int m_charWidth; // 每个字符的宽度
int m_margin; // 16进制字节间隔离宽度
int m_columnWidth; // 每个16进制字节的宽度
int m_labelWidth; // 地址信息宽度
int m_HexWidth; // 16进制显示宽度
int m_textWidth; // 文本信息宽度
int m_bytesPerLine; // 每行显示字节数
int m_addressBytes; // 地址信息字节数
qint64 m_numLines; // 总行数
qint64 m_numVisibleLines; // 页面内可显示的行数
};
#endif // HEXWIDGET_H
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/zhyulo/FileTreeViewer.git
git@gitee.com:zhyulo/FileTreeViewer.git
zhyulo
FileTreeViewer
FileTreeViewer
master

搜索帮助