QT之圆形头像(使用PNG的Mask达到的效果)

废话不多说!直接上代码。

我们在很多UI设计应用中,需要用到自定义形状头像,在这里,我对圆形头像的设计做简单的阐述,其它形状头像可参考本文做相应的更改即可。如下图所示为设计的圆形头像:

上代码:

SetMask::SetMask(QWidget *parent)
: QWidget(parent)
{
      ui.setupUi(this);
      QPixmap pixmapBack = ":/SetMask/Resources/mask.png";
      ui.head->setMask(pixmapBack.mask());
      ui.headborder->setStyleSheet("border-image:url(:/SetMask/Resources/mask.png)");
      QPixmap head = QPixmap(":/SetMask/Resources/head.jpg").scaled(QSize(ui.head->width(), ui.head->height()),         Qt::KeepAspectRatio, Qt::SmoothTransformation);
      ui.head->setPixmap(head);
}

在这里如果你对setMask有相关疑惑的地方,可参考QT帮助文档,在这里不做太多介绍。

工程文件我已上传,需要的可以免费自行下载:QT之圆形头像工程文件下载

http://blog.csdn.net/ly305750665/article/details/53494574

时间: 2024-11-06 16:27:08

QT之圆形头像(使用PNG的Mask达到的效果)的相关文章

圆形头像处理

#import "MainViewController.h" @interface MainViewController () @end @implementation MainViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. //创建圆形头像视图 UIImageView*avatar=[[[UIImageView al

圆形头像CircleImageView和Cardview使用

效果: 圆形头像在我们的日常使用的app中很常见,因为圆形的头像比较美观. 使用圆形图片的方法可能有我们直接将图片裁剪成圆形再在app中使用, 还有就是使用自定义View对我们设置的任何图片自动裁剪成圆形. 这里使用github上CircleImageView github:https://github.com/hdodenhof/CircleImageView CardView顾名思义卡片式的View, CardView继承的是FrameLayout,所以摆放内部控件的时候需要注意一下 可以设

圆形头像以及一些常见需求形状自定义ImageView组件

在实际开发中,我们经常会遇到这样的需求,就是无论图片长啥样,我们都要其显示成圆形.圆形加一个边框.矩形加边框,带圆角的矩形等等,lib和demo下载地址:https://github.com/mapleyuan/RoundImageView.效果如下,大家有兴趣的可以下下来使用,发现有什么问题也欢迎向我提出. 下面我大概讲下实现. 首先当然是继承ImageView,重写onDraw()方法.我们来看看onDraw的实现:     protected void onDraw(Canvas canv

几行实现圆形头像,以及一些常见需求形状自定义ImageView组件

在实际开发中,我们经常会遇到这样的需求,就是无论图片长啥样,我们都要其显示成圆形.圆形加一个边框.矩形加边框,带圆角的矩形等等,我已把自己平常用的组件和demo上传到了github(https://github.com/mapleyuan/RoundImageView)上,效果如下.大家有兴趣的可以下下来使用,发现有什么问题也欢迎向我提出. 下面我大概讲下实现. 首先当然是继承ImageView,重写onDraw()方法.我们来看看onDraw的实现: @Override     protect

【Android】自定义圆形ImageView(圆形头像 可指定大小)

最近在仿手Q的UI,这里面经常要用到的就是圆形头像,看到 在android中画圆形图片的几种办法 这篇文章,了解了制作这种头像的原理.不过里面提供的方法还有一个不足的地方就是不能根据实际需求改变图片的大小,也就是说提供的原图是大尺寸的,转换之后的图片也是大尺寸的,这显然不符合我们实际项目中的需求.于是我对里面介绍的第一种方法做了一番改进,使其能直接在XML中指定图片的大小. 大体步骤 将原图居中裁剪成正方形 根据指定的宽度对正方形进行缩放 裁剪成圆形 效果 代码实现 package com.de

iOS实现头像选取(照相或者图片库)、大小等比缩放、生成圆形头像

//弹出actionsheet.选择获取头像的方式//从相册获取图片 -(void)takePictureClick:(UIButton *)sender { // /*注:使用,需要实现以下协议:UIImagePickerControllerDelegate, // UINavigationControllerDelegate // */ // UIImagePickerController *picker = [[UIImagePickerController alloc]init]; //

自定义控件 编辑和选取圆形头像

android大家都有很多需要用户上传头像的需求,有的是选方形,有的是圆角矩形,有的是圆形. 首先我们要做一个处理图片的自定义控件,把传入的图片,经过用户选择区域,处理成一定的形状. 有的app是通过在图片上画一个矩形区域表示选中的内容,有的则是通过双指放大缩小,拖动图片来选取图片.圆形头像,还是改变图片比较好 圆形区域可调节大小. 这个自定义View的图像部分分为三个,背景图片,半透明蒙层,和亮色区域--还是直接贴代码得了 package com.example.jjj.widget; imp

【Android】自己定义圆形ImageView(圆形头像 可指定大小)

近期在仿手Q的UI,这里面常常要用到的就是圆形头像,看到 在android中画圆形图片的几种办法 这篇文章,了解了制作这样的头像的原理.只是里面提供的方法另一个不足的地方就是不能依据实际需求改变图片的大小,也就是说提供的原图是大尺寸的,转换之后的图片也是大尺寸的,这显然不符合我们实际项目中的需求.于是我对里面介绍的第一种方法做了一番改进,使其能直接在XML中指定图片的大小. 大体步骤 将原图居中裁剪成正方形 依据指定的宽度对正方形进行缩放 裁剪成圆形 效果 代码实现 package com.de

Duilib实现圆形头像控件

.h文件 1 #ifndef __UIHEADICON_H__ 2 #define __UIHEADICON_H__ 3 4 5 /* 6 名称:圆形头像控件(派生CButtonUI类) 7 */ 8 9 10 class CHeadUI: public CButtonUI 11 { 12 public: 13 14 CHeadUI(); 15 16 LPCTSTR GetClass() const; 17 LPVOID GetInterface(LPCTSTR pstrName); 18 19