关于QT,这个是干嘛的
#include"penstyledelegate.h"QPenStyleDelegate::QPenStyleDelegate(QObject*parent):QAbs...
#include "penstyledelegate.h"
QPenStyleDelegate::QPenStyleDelegate(QObject *parent)
: QAbstractItemDelegate(parent)
{
}
void QPenStyleDelegate::paint(QPainter *painter,
const QStyleOptionViewItem &option,
const QModelIndex &index) const
{
QString text = index.data(Qt::DisplayRole).toString();
Qt::PenStyle penStyle = (Qt::PenStyle)index.data(Qt::UserRole).toInt();
QRect r = option.rect;
if (option.state & QStyle::State_Selected) {
painter->save();
painter->setBrush(option.palette.highlight());
painter->setPen(Qt::NoPen);
painter->drawRect(option.rect);
painter->setPen(QPen(option.palette.highlightedText(),2, penStyle));
}
else
painter->setPen(penStyle);
painter->drawLine(0, r.y() + r.height()/2, r.right(), r.y() + r.height()/2);
if (option.state & QStyle::State_Selected)
painter->restore();
}
QSize QPenStyleDelegate::sizeHint(const QStyleOptionViewItem &option,
const QModelIndex &index) const
{
return QSize(100,30);
} 展开
QPenStyleDelegate::QPenStyleDelegate(QObject *parent)
: QAbstractItemDelegate(parent)
{
}
void QPenStyleDelegate::paint(QPainter *painter,
const QStyleOptionViewItem &option,
const QModelIndex &index) const
{
QString text = index.data(Qt::DisplayRole).toString();
Qt::PenStyle penStyle = (Qt::PenStyle)index.data(Qt::UserRole).toInt();
QRect r = option.rect;
if (option.state & QStyle::State_Selected) {
painter->save();
painter->setBrush(option.palette.highlight());
painter->setPen(Qt::NoPen);
painter->drawRect(option.rect);
painter->setPen(QPen(option.palette.highlightedText(),2, penStyle));
}
else
painter->setPen(penStyle);
painter->drawLine(0, r.y() + r.height()/2, r.right(), r.y() + r.height()/2);
if (option.state & QStyle::State_Selected)
painter->restore();
}
QSize QPenStyleDelegate::sizeHint(const QStyleOptionViewItem &option,
const QModelIndex &index) const
{
return QSize(100,30);
} 展开
3个回答
展开全部
Qt工具包是一个完整封装的C 类库(可以类比MFC?),并且使用“一次编写,随处编译”的方式,可用于构建多平台图形用户界面。
Qt程序的编译可以使用VC,Borland C ,MinGW等多种编译器。Qt程序最主要的特性是独有的“信号和槽”的强大机制。
Qt使程序员通过使用一个单一源程序来构建跨平台的应用程序。该应用程序可以运行在windows、Mac os X、Linux、Solaris、HP-UX和其他使用X11的Unix版本。Qt的嵌入式版本Qt/Embedded可以应用于WinCE和嵌入式Linux,它和桌面版本具有相同的应用程序编程接口。此外还有应用于网页脚本的Qtpia。
Adobe PhotoShop Album就是一个Qt编写的面向大众的市场的Windows应用程序例子之一。
Qt程序的编译可以使用VC,Borland C ,MinGW等多种编译器。Qt程序最主要的特性是独有的“信号和槽”的强大机制。
Qt使程序员通过使用一个单一源程序来构建跨平台的应用程序。该应用程序可以运行在windows、Mac os X、Linux、Solaris、HP-UX和其他使用X11的Unix版本。Qt的嵌入式版本Qt/Embedded可以应用于WinCE和嵌入式Linux,它和桌面版本具有相同的应用程序编程接口。此外还有应用于网页脚本的Qtpia。
Adobe PhotoShop Album就是一个Qt编写的面向大众的市场的Windows应用程序例子之一。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询