包含python使用gdi的词条

本文目录一览:

python 用py2exe 打包程序报错 !!! 如何打包依赖?求打救…..[抓狂]

在你自己机器上运行时,确保上面说的dll在你的文件路径下就行了。system32目录一定在你路径下,把

python27\dlls

下的几个文件复制到

exe

文件目录下试试吧。再不行,改用

pyinstaller

打包吧。我现在放弃

py2exe

改用这个了,感觉比

py2exe

好。话说

py2exe

也好久没更新了好像。

python 如何监控进程GDI对象

GR_GDIOBJECTS

 Return the count of GDI objects.   //

 

GR_USEROBJECTS

1

 Return the count of USER objects.

 

    HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ,FALSE,7604); //传对应的进程ID

 

    //GetProcessMemoryInfo(hProcess,ProMem,sizeof(ProMem));

 

    DWORD dwGdi = GetGuiResources(hProcess, GR_GDIOBJECTS);

    DWORD dwUser = GetGuiResources(hProcess, GR_USEROBJECTS);

 

    CloseHandle(hProcess);

如何使用GDI绘制半透明矩形

HDC hBitmapDC = CreateCompatibleDC(hDC);

HBITMAP hBitmap = CreateCompatibleBitmap(hDC, rt.Width(), rt.Height());

SelectObject(hBitmapDC,hBitmap);

步骤2)在内存DC中绘图

FillRgn(hBitmapDC, (HRGN)rgn, (HBRUSH)m_pGdiBrush);

Rectangle(hBitmapDC, 0, 0, 100, 100);

步骤3) 半透明混合

BLENDFUNCTION bf;

bf.BlendOp = AC_SRC_OVER;

bf.BlendFlags = 0;

bf.AlphaFormat = 0;

bf.SourceConstantAlpha = 50;

AlphaBlend(hDC,rt.left,rt.top,rt.Width(),rt.Height(),hBitmapDC,0,0,rt.Width(),rt.Height(),bf);

2、GDI+

步骤1) 创建半透明画刷

m_pBrush = new SolidBrush(Color(128, GetRValue(clrMask), GetGValue(clrMask), GetBValue(clrMask))); // 透明度 128

步骤2)使用画刷绘图

Graphics graphics(hDC);

graphics.FillPolygon(m_pBrush, pts, 3, FillModeAlternate);

效率: GDI+ GDI。

使用GDI+绘图简单而高效,所以推荐使用GDI+。

3、Direct Draw

此方法比较复杂,没有对Direct Draw有一定的了解,不推荐此方法。

代码比较多,不做列举,需要注意的地方有:

使用Direct Draw时,注意,绘制半透明多边形的时候,因为牵涉到已有的图像数据,所以会对绘图页面原有的图像进行读取操作。如果当前绘制页面开辟在显存中的时候,

对显存的读操作会导致整个渲染流水线的暂停,

从而严重影响程序的效率,此时,绘制半透明多边形就会变得异常的慢。这时候需要将绘制页面从显存中更改至内存中。或者在内存中创建一个过度页面,绘制完成后再往显存页面上贴图。效率会有显著提升,实测:

请教该怎么使用GDI+控件

创建自定义控件的3种主要实现方式:

1)继承已有的控件来实现自定义控件: 主要是当要实现的控件和已有的控件在很多方面比较类似, 通过对已有控件的扩展来满足要求。

2)通过继承一个布局文件实现自定义控件,一般来说做组合控件时可以通过这个方式来实现。

注意此时不用onDraw方法,在构造广告中通过inflater加载自定义控件的布局文件,再addView(view),自定义控件的图形界面就加载进来了。

3)通过继承view类来实现自定义控件,使用GDI绘制出组件界面,一般无法通过上述两种方式来实现时用该方式。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/240628.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-12 12:23
下一篇 2024-12-12 12:23

相关推荐

  • Python周杰伦代码用法介绍

    本文将从多个方面对Python周杰伦代码进行详细的阐述。 一、代码介绍 from urllib.request import urlopen from bs4 import Bea…

    编程 2025-04-29
  • Python计算阳历日期对应周几

    本文介绍如何通过Python计算任意阳历日期对应周几。 一、获取日期 获取日期可以通过Python内置的模块datetime实现,示例代码如下: from datetime imp…

    编程 2025-04-29
  • 如何查看Anaconda中Python路径

    对Anaconda中Python路径即conda环境的查看进行详细的阐述。 一、使用命令行查看 1、在Windows系统中,可以使用命令提示符(cmd)或者Anaconda Pro…

    编程 2025-04-29
  • Python中引入上一级目录中函数

    Python中经常需要调用其他文件夹中的模块或函数,其中一个常见的操作是引入上一级目录中的函数。在此,我们将从多个角度详细解释如何在Python中引入上一级目录的函数。 一、加入环…

    编程 2025-04-29
  • Python列表中负数的个数

    Python列表是一个有序的集合,可以存储多个不同类型的元素。而负数是指小于0的整数。在Python列表中,我们想要找到负数的个数,可以通过以下几个方面进行实现。 一、使用循环遍历…

    编程 2025-04-29
  • Python清华镜像下载

    Python清华镜像是一个高质量的Python开发资源镜像站,提供了Python及其相关的开发工具、框架和文档的下载服务。本文将从以下几个方面对Python清华镜像下载进行详细的阐…

    编程 2025-04-29
  • Python字典去重复工具

    使用Python语言编写字典去重复工具,可帮助用户快速去重复。 一、字典去重复工具的需求 在使用Python编写程序时,我们经常需要处理数据文件,其中包含了大量的重复数据。为了方便…

    编程 2025-04-29
  • 蝴蝶优化算法Python版

    蝴蝶优化算法是一种基于仿生学的优化算法,模仿自然界中的蝴蝶进行搜索。它可以应用于多个领域的优化问题,包括数学优化、工程问题、机器学习等。本文将从多个方面对蝴蝶优化算法Python版…

    编程 2025-04-29
  • Python程序需要编译才能执行

    Python 被广泛应用于数据分析、人工智能、科学计算等领域,它的灵活性和简单易学的性质使得越来越多的人喜欢使用 Python 进行编程。然而,在 Python 中程序执行的方式不…

    编程 2025-04-29
  • python强行终止程序快捷键

    本文将从多个方面对python强行终止程序快捷键进行详细阐述,并提供相应代码示例。 一、Ctrl+C快捷键 Ctrl+C快捷键是在终端中经常用来强行终止运行的程序。当你在终端中运行…

    编程 2025-04-29

发表回复

登录后才能评论