CSDN论坛 > VC/MFC > 基础类

有没有快速的异形窗口实现方法? [问题点数:32分,结帖人2ndboy]

Bbs6
本版专家分:7132
结帖率 100%
CSDN今日推荐
Bbs6
本版专家分:7132
Bbs3
本版专家分:896
Bbs4
本版专家分:1529
Blank
红花 2001年9月 C/C++大版内专家分月排行榜第一
2001年8月 C/C++大版内专家分月排行榜第一
Blank
黄花 2001年7月 C/C++大版内专家分月排行榜第二
Bbs6
本版专家分:7132
匿名用户不能发表回复!
其他相关推荐
MFC异形窗口-多边形窗口-根据图片自定义窗口形状-CRgn
Windows中所有窗口显示默认为矩形,很多时候我们希望窗口的形状可以随意变化。这个时候我们就需要使用MFC的CRgn类, 每一个窗口都有一个自己的CRgn,定义了当前窗口的显示区域,CRgn就好像是在一张图片上添加了相框,相框的形状就决定了 窗口的显示范围。当然显示区域之外就属于其他窗口。 一,多边形窗口 CRect rc; GetWindowRect(&rc
Qt开发:无边框异形窗口,透明背景,可移动
很多端游的启动器客户端都是异形窗口,无边框,自绘并重写了最小化、最大化、关闭按钮。本文具体讲一下实现。 步骤: 1,设置窗口透明度、窗口无边框样式、窗口背景透明。 2,准备ps过的带透明通道的不规则png图片,设置为窗口背景。 3,重写鼠标事件实现窗口移动。 看效果: 背景是EA大作《镜之边缘》 上代码: mainwindow.h
用VC++实现异形窗口.
 用VC++实现异形窗口.大连铁道学院(116028)李文辉随着Microsoft凭借Windows在操作系统上取得的巨大成绩,Windows用户界面也日益成为业界标准。统一的界面给广大用户对应用软件的学习与使用带来了很大方便。但每天都面对同一副面孔,日久天长难免会产生一些厌倦,开发一些“离经叛道”,一改Windows应用程序千篇一律的“标准”界面,一定会给你带来一种清新的感觉
Qt5.8 异形窗口
#ifndef QT_SHAPEDWINDOW_H #define QT_SHAPEDWINDOW_H #include #include #pragma execution_character_set("utf-8") class Qt_Shapedwindow : public QMainWindow { Q_OBJECT public: Qt_Shapedwindow(QWid
Qt中通过设置位图掩码生成异形控件【附源码】
转载自:http://www.linuxidc.com/Linux/2013-04/83225.htm注释:转载的这篇博客适用于不规则按钮,目标区域外的透明部分点击无作用,目标区域内的透明部分点击有效果,当然设置按钮掩码所使用的图片目标区域都是不透明的!以下步骤是以按钮为例,其他控件类似①在QtDesigner中拖出一个按钮或者在程序中生成一个按钮。②加载一个用来指定按钮形状的图片:QPixmap
qt实现异形窗口
Widget::Widget(QWidget*parent): QWidget(parent), ui(newUi::Widget) { ui->setupUi(this); setWindowFlags(Qt::FramelessWindowHint); //实现主窗口的无标题栏和边框 QPixmap mask("mask.png");  //需要的窗口样式 setMask(QBi
Qt中不规则异形窗口的实现几点总结
Qt中不规则异形窗口的实现目前发现有两种方法 1.针对窗口类的,特别是登陆窗口之类的,如下图所示: 实现方法;在main函数中,加入重要代码: w.setWindowOpacity(1);//设置透明度,默认是1为全不透明,0为全透明 w.setWindowFlags(Qt::FramelessWindowHint);//设置窗口为无边界 w.setAttribute(Qt::WA_
C#WinForm制作异形窗体/控件-.NET教程,C#语言
制作异形窗体或控件的思路一般都是想办法生成一个region,然后设置给指定的窗口或控件。生成region的方法有非常多,最常用的就是从一幅图片生成,把该图片中的透明色部分“抠”掉,剩下的部分作为一个region。设置窗口或控件的region能用setwindowrgn api,不过.net framework封装了这个操作,在c#中只要对窗口或控件的region属性赋值就能了。下面我就把我在c#中
UpdateLayeredWindow方式实现异型窗口
使用该种方法要注意几个问题: 1. 窗口属性必须是Top Window,子窗口(Win8之前的操作系统)不支持实现异形窗口 2. Layer Window没有WM_PAINT消息,需要自己调用OnPaint 3. 窗口属性可设置为 WS_POPUP | WS_VISIBLE, WS_EX_TOOLWINDOW | WS_EX_LAYERED 实现代码: CDC
C++根据png图绘制异性窗口
void TrimWindowRegion(HWND hWnd, Gdiplus::Bitmap& rBmp) { if ( rBmp.GetWidth() > 0 && rBmp.GetHeight() > 0 ) { Gdiplus::Color colr; HRGN hRgn = CreateRectRgn(0, 0, rBmp.GetWidth(), rBmp.GetHeigh
关闭