给View换字体

注意,给View换字体是直接换。在Delegate里换的只是某一列的字体

class delegate : public QStyledItemDelegate
{
public:
delegate(QObject* parent = 0) : QStyledItemDelegate(parent)
{}

void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const
{
QStyledItemDelegate::paint(painter, option, index);
}
};

int main(int argc, char* argv[])
{
QApplication a(argc, argv);

QStringList list;
list << "a" << "b" << "c";

QListWidget w;
w.setFont(QFont("Courier", 30));
delegate d;
w.setItemDelegate(&d);
w.addItems(list);
w.show();

QListView lv;
lv.setFont(QFont("Courier", 30));
lv.setItemDelegate(&d);
QStringListModel m;
m.setStringList(list);
lv.setModel(&m);
lv.show();

return a.exec();
}

参考:http://www.qtcentre.org/archive/index.php/t-29871.html

-----------------------------------------------------------------------

Delegate里也能换字体,但换的是progress自己的字体(如果用到的话),并不对整个view起作用,例如:

void ProgressBarDelegate::paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const
{
    if (index.column() == 3) {
    else {
        // good 这里换字体是换进度条(第三列)的字体,但是能起作用
        painter->save();
        painter->setFont(QFont("Times", 10, QFont::Bold));
        return QStyledItemDelegate::paint(painter, option, index);
        painter->restore();
    }
}

------------------------------------------------------------------------

另外,设置QTableView的行高是:

QTtableView的verticalHeader()->setDefaultSectionSize(15),既可以放在构造函数里,也可以构造完毕后调用。

时间: 2024-10-03 21:41:30

给View换字体的相关文章

安卓ROM简单定制、打包、签名、换字体

首先下载一个ROM主要是ZIP格式的. 一.下载一个ZIP格式的ROM解压,一个ROM的结构其实以CM7官方为例,很简单如下 01.META-INF 02.system 03.boot.img复制代码 当然有的也包含有DATA文件夹,那么这些是干嘛的呢!META-INF\com\google\android\updater-script放的是刷机脚本,刷进机器就靠这些脚本,一般不用动就行. system里面放的是系统文件夹 01.system\app system\bin 02.system\e

5.4.4.2 kindle paper white 1代降级越狱换字体

http://pan.baidu.com/s/1c18jFzi  越狱文件 http://pan.baidu.com/s/1slCdm7z     PNG压缩 http://pan.baidu.com/s/1i52kgdB    插件系列 降级 先降级到5.4.4.2,把5.4.4.2固件放到KPW1下面,就是不用打开文件夹,直接打开盘符,放进去[这叫 放进 根目录] 连着usb线长按20秒,然后指示灯闪一下.松开,就会自动升级 越狱 把kindle-jailbreak-1.14.N.zip里面

TODO:一不顺眼就换字体Go之代码篇

image包实现了一个基本的2D图像库,该包中包含基本的接口叫做image,这个里面包含color,这个将在image/color中描述:新增字体font,进行字体编辑.早在几年前Go image包出来的时候就有人实现了图片式水印处理,处理起来很方便,有兴趣的朋友可以用搜索引擎搜索一下.本文主要实现的功能是用Golang的image的font实现水印功能,实现了字体的大小.像素.坐标.有兴趣的朋友可以拷贝到本地测试看看.由于一些平台的代码兼容不好,所以本文代码以图片形式展现,需要的话可以联系我.

Android: View换切后,无法正常设置焦点或切换后TextView的虚拟键盘不弹出

边学.边测试,花了三天时间完工一个小应用. 遇到很多问题,但最终还是解决了. 我的手机是Android2.2版,所以我也在是2.2版环境下学习,开发. 1. 在同一个Activity中的不同View(layout)中切换界面时,经常发生TextView无法正常取得焦点. 或者更严重的情况是,有了焦点,但点击后,虚拟键盘不弹出,根本就无法正常输入数据. 我昨天晚上为了解决这个焦点和虚拟键盘不弹出的问题,花了三个小时. 最终的解决方法: 当由view1 切换到 view2 时: setContent

文字打字机效果,可换字体样式

<div id="text">你好,欢迎光临,今天是个好日子!</div> <script> $(function() { daziji("#text", 150); //调用打字机函数 }) </script> js function daziji(dazijiDiv, dazijiTime) { var text1 = $(dazijiDiv).text(), text2 = text1, lentext = te

iOS -- app全局字体设置

方法一: 写一个UILabel(FontExtension)扩展重写initWithFrame(手写代码必走方法)和awakeFromNib(xib必走方法)当然UIButton.UITextView等控件都可以用这种方式 #import <UIKit/UIKit.h> @interface UILabel (FontExtension) @end #import "UILabel+FontExtension.h" #define kGlobalFontFamilyName

iOS运用runtime全局修改UILabel的默认字体

iOS运用runtime全局修改UILabel的默认字体 一.需求背景介绍 在项目比较成熟的基础上,遇到了这样一个需求,应用中需要引入新的字体,需要更换所有Label的默认字体,但是同时,对于一些特殊设置了字体的label又不需要更换.乍看起来,这个问题确实十分棘手,首先项目比较大,一个一个设置所有使用到的label的font工作量是巨大的,并且在许多动态展示的界面中,可能会漏掉一些label,产生bug.其次,项目中的label来源并不唯一,有用代码创建的,有xib和storyBoard中的,

换肤框架

序言 现在说是换肤框架还有点夸大其词,因为目前只实现了颜色的替换,目前网上已有的换肤框架我都研究过,主要感觉给每个View设置样式,还要保存每个需要换肤的View,实在是太繁琐,而且目前我的项目中不需要皮肤功能,开发这个框架也仅仅是为了实现夜间模式,而又不用过多的改造原有的代码,比如给每个颜色替换成引用等等.从目前实现的效果来看,基本能达到简单方便的目的,而且也能实现WebView的换肤,且不会重启Activity,还有过渡动画,我相信这个框架已经能满足大多数的项目了. 效果 功能 1.支持通过

android应用开发之View的大小计量单位(px、dpi、dp、dip、sp)

http://blog.csdn.net/ljianhui/article/details/43601495?ref=myread 一.像素(px)与屏幕分辨率 1)px(Pixels ,像素):对应屏幕上的实际像素点.例如,320*480的屏幕在横向有320个象素,在纵向有480个象素. 2)屏幕分辨率就是在屏幕上显示的物理像素总和,它等于屏幕的宽度上的像素*高度上的像素.在Android应用程序的开发上,不会使用屏幕分辨率. 3)屏幕分辨率虽然是宽*高,但是它与屏幕的大小没有关系,它与一个屏