首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【Windows编程】系列第五篇:GDI图形绘制

Windows的GDI函数包含数百个API可供我们使用,本篇把最常用的GDI绘图做一个讲解。...既然是画图,就少不了颜色的描述,Windows中的颜色有几种表示,其中COLORREF在GDI绘制中用的最多,它实际上是一个无符号32为整型。...画笔:绘图时会采用当前环境中的画笔进行绘制,如果显示不创建,将会用系统默认的画笔。 背景:某些GDI会有透明和不透明的设置。 背景颜色:比如文本输出的间隙颜色。...可以使用微软提供的GDI+绘图函数,具有抗锯齿效果。 ?...Windows的GDI基本绘制其实并不难掌握,只要仔细阅读MSDN上API的详细使用说明就一定能正确使用,但是在创建GDI对象并使用后,一定要记得释放。

3.6K80

VBA专题10-2:使用VBA操控Excel界面之设置工作表

即便隐藏了名称,你仍然能够通过在名称框中输入名称到达该名称的单元格区域。...如果要指定滚动的窗格,可以使用类似下面的语句,例如,在第2个窗格中滚动到距离最左侧列10列: ActiveWindow.Panes(2).ScrollColumn= 10 如果拆分的窗格被冻结,那么ScrollRow...工作表代码名称(在VBE编辑器的属性窗口中可以看到) 下面的代码展示了隐藏工作表之前引用工作表的3种不同的方法: '隐藏名为Sheet3的工作表 Sheets("Sheet3").Visible= xlSheetHidden...注意,代表颜色值的常量可以在VBA帮助系统中查找。...设置网格线颜色 示例代码: '更改活动窗口中活动工作表上网格线颜色 ActiveWindow.GridlineColorIndex= 3 '3代表红色, 4代表绿色,5代表蓝色 '重新设置网格线为其默认颜色

4.8K41
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【专业技术】Win32 SDK编程:我们如何输出文本

    在使用Win32编程时,我们常常需要输出文本到窗口上,Windows所有的文本字符或者图形输出都是通过图形设备接口(GDI)进行的,Windows的三大组件之一的GDI32.dll封装了所有的文本和图像输出函数...下面以最常用的TextOut为例来说明如何在Windows窗口中如何输出文本,其他请查看MSDN的用法。...在windows窗口上输出有两种方式来获取设备上下文句柄,一种是在处理WM_PAINT消息时通过BeginPaint函数获取,另外一种就是通过主动获取上下文句柄函数GetDC或者GetWindowDC,...而通过WM_PAINT绘制的文本会在窗口有更新时自动调用,因此不用担心什么时候需要重绘的问题,Windows会在以下的情况下受到WM_PAINT消息: 用户移动一个窗口,导致原来被盖住的部分窗口显示出来...使用WM_PAINT还有一个好处,就是windows会自己计算哪些区域需要更新,也就是说只有真正变化的地方才会更新,这样更新的代价会降低到最小。

    2K50

    CorelDraw2022评估版序列号 新增订阅版功能

    此外,还更新了对"颜色平衡"、"均衡"以及"样本和目标"过滤器的控制,并添加了一个新的"色阶"过滤器,可以更轻松地调整图像对比度。...调整"泊坞窗性能 借助于 Corel PHOTO-PAINT,使用"调整"泊坞窗进行图像编辑时,可以体验到速度的显著提升。...在 Corel PHOTO-PAINT 中,现在的"对象"泊坞窗提供了一个显示实时结果的不透明度滑块,使用户可以更轻松地调整对象不透明度并评估更改效果。...现在,您还可以对包含多个对象的选项应用非破坏性效果,即使在使用遮罩时也是如此。...学习"泊坞窗 在"学习"泊坞窗(在以前的版本中称为"提示"泊坞窗)的全新"浏览"部分中,搜索学习资源和工具。从应用程序中访问和浏览丰富的在线资源库,有助于快速熟悉产品功能。

    2.9K20

    【pygame系列 第一课 创建游戏窗口 】

    pygame是python中专门用来编写游戏的一个引擎库,通过使用它,就可以很快的实现编写图形化的游戏。 比如下面这种: ? ? ? 下面就正式开始吧!...2.创建游戏窗口 代码: import pygame # 使用前先需要初始化,初始化所有被导入的pygame子模块,固定用法 pygame.init() # 初始化pygame # 游戏肯定是在一个窗口中...,初始化所有被导入的pygame子模块,固定用法 pygame.init() # 初始化pygame # 游戏肯定是在一个窗口中,那我们先来创建一个窗口 size = width, height = 640...6.在背景上面显示一个球 代码: import pygame # 使用前先需要初始化,初始化所有被导入的pygame子模块,固定用法 pygame.init()...event.type :事件类型 screen.fill(color) :填充颜色 用的(r,g,b)格式 pygame.image.load('image.png'): 加载图片 括号中填写的是图片的路径

    2.2K20

    VB.NET 实现屏幕取色器20210924

    VB.NET 实现屏幕取色器 一,先看看效果图 二,在开始前,我们先来简单(毕竟复杂的咱也不会)了解一下,颜色的各种表达方式和他们之间的转换吧!(以下内容来自网络) 2.1.什么是RGB模式?  ...RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色...它和RGB相比最大不同是,RGB模式是发光的色彩模式,你在一间黑暗的房间内仍然可以看见萤幕上的内容。  CMYK是一种依靠反光的色彩模式,我们能阅读报纸的内容是为什么呢?...是因阳光或灯光照射到报纸上,再把内容反射到我们的眼中。CMYK是需要有外界光源的情况下才可以看到的。所以在黑暗房间内是无法阅读的。只要是在印刷品上看到的图像,就是CMYK模式表现的。...HSV(Hue, Saturation, Value)是根据颜色的直观特性由A. R. Smith在1978年创建的一种颜色空间, 也称六角锥体模型(Hexcone Model)。

    2.1K80

    【CC++】回调函数详解&注册窗口类&LRESULT & CALLBACK详解以及游戏中的应用

    一般在使用中 SendMessage 会导致线程堵塞,所以在处理耗时的任务时不推荐使用,会导致界面假死,常用的场景是一些同步通知且处理迅速的场景。...这个更新区域是相对于客户区来定义的: 更新区域 在应用程序的重绘代码中,有两个常见的策略: 一种策略是绘制整个客户区,不管操作系统传过来的更新区域的大小。...下面的代码会使用单一的颜色填充整个更新区域,使用的颜色是系统默认的窗口背景颜色(COLOR_WINDOW)。实际的颜色依赖于当前用户的配色方案。...在代码中,我们传入了整个更新区域。...FillRect 函数是图形设备接口(GDI)的一部分,这套接口已经非常古老,在 Windows 7 以后的系统,微软推出了一个新的 2D 图形引擎,名字叫做 Direct2D。

    1.7K21

    BoundsChecker使用说明(代码调试)

    ,它主要定位程序在运行时期发生的各种错误。...集成在VC中,启动VC的debug 三、 BoundsChecker,两种工作模式 使用BoundsChecker对程序的运行时错误进行检测,有两种使用模式可供选择。...要想使用ActiveCheck模式来检测程序的运行时错误,只需在VC++集成开发环境中打开BoundsChecker功能,然后从调试状态运行程序即可。...ActiveChecker使用方便,只需在Debug状态下直接运行程序即可,并且程序的运行速度较快,但检测的错误种类有限; FinalCheck模式下,需要使用BoundsChecker的编译连接器重新编译连接生成可执行程序...,同时也给出错误发生在OnPaint()函数中,对于GDI的资源泄漏也必需在FinalCheck模式下才可以检测出来。

    1.6K20

    ArcGIS Pro中2D和3D模式下绘制地图

    由于运河是水体,因此使用不同的颜色来代表蓝色会更有意义。接下来,您将更改运河符号。 1.在内容窗格中,对于 Canals 图层,单击红线符号。 2.在符号系统窗格中,单击属性。...3.双击较大的圆形图钉符号。 图层符号和符号系统窗格随即进行更新。 您可以对默认的样式进行自定义,以使其更加引人注目。 4.在符号系统窗格中,单击符号。 5.单击属性选项卡,然后单击图层按钮。...11.返回至威尼斯书签并关闭创建要素窗格。 12.单击编辑选项卡,在管理编辑内容组中,单击保存按钮。 13.在保存编辑窗口中,单击是以保存所有编辑。...2.在内容窗格中,右键单击 Floodwater,然后选择属性。 随即出现图层属性窗口。 3.在图层属性窗口中,单击高程。对于要素,选择在绝对高度。...在设置属性映射窗口中,单击确定。 16.在符号系统窗格中,单击应用,然后关闭符号系统窗格。 建筑物将使用新的高度数据进行更新。 注: 重新绘制要素可能需要几分钟的时间。

    20210

    VBA专题10-4:使用VBA操控Excel界面之设置工作簿视图和窗口

    下面是设置工作簿视图和窗口的一些VBA代码。 工作簿视图 可以选择使用普通视图、页面布局视图、分页预览视图来显示工作表。...示例代码: '拆分活动窗口中的活动工作表在第5行上下分格 With ActiveWindow .SplitRow = 5 .SplitColumn = 0 End With '拆分活动窗口中的活动工作表在第...4列左右分格 With ActiveWindow .SplitRow = 0 .SplitColumn = 4 End With '拆分活动窗口中的活动工作表为4个窗格 '在第5行和第4...冻结活动窗口的拆分窗格 示例代码: '在第2行冻结活动窗口中的活动工作表 '即第1行和第2行被冻结 With ActiveWindow .SplitRow = 2 .SplitColumn...ActiveWindow .SplitRow = 2 .SplitColumn = 1 .FreezePanes = True End With 当冻结活动窗口的拆分窗格后,在滚动工作表时被冻结的列和行将保持可见

    3.8K20

    【愚公系列】2023年12月 GDI+绘图专题 图形图像编程基础

    GDI对象定义了GDI函数使用的工具和环境变量,而GDI函数使用GDI对象绘制各种图形,在C#中,进行图形程序编写时用到的是GDI+(Graphice Device Interface Plus图形设备接口...在GDI+中,通过Color结构封装对颜色的定义,Color结构中,除了提供(A,R,G,B)以外,还提供许多系统定义的颜色,如Pink(粉颜色),另外,还提供许多静态成员,用于对颜色进行操作。...,一种颜色在一端,而另外一种颜色在另一端,在中间,两种颜色融合产生过渡或衰减的效果。...(2)单击Image属性右侧的【…】,弹出一个“选择资源”窗口,在该窗口中选择“本地资源”,单击【导入(M)...】将弹出一个“打开”对话框。 (3)选择图像文件后,单击【打开】按钮。...0 255 255 品红 255 0 255 (2)彩色图像颜色值的获取 在使用C#系统处理彩色图像时,使用Bitmap类的GetPixel方法获取图像上指定像素的颜色值,格式为: Color c

    88512

    Win32知识之窗口绘制.窗口第一讲

    我们知道.内存分为高低2G 低2G是给应用程序使用的. 高2G是给操作系统使用的.而我们画图形的操作都是操作系统通过底层的 win32k.sys这个驱动来提供的.....图形界面管理. 3.gdi.dll         自己绘制的的管理....二丶绘制窗口步骤   绘制窗口免不了使用API.但是使用之前.需要知道我们要操作的步骤. 1.获取窗口句柄.也就是设备对象. 2.获取窗口中的DC上下文.可以理解为获取指定窗口的绘图的那块内存. 3.创建图形对象...你的画笔是什么颜色的.是一串16进制可以在线取色 ); 返回图形对象 还有常用的.创建矩形区域....MSDN: https://docs.microsoft.com/zh-cn/windows/desktop/gdi/windows-gdi  代码使用例子 如果你安装了MSDN 2001版本.搜索SelectObject

    1.6K40

    .NET3.5 GDI+ 图形操作1

    GDI+构成了Windows XP操作系统及其后续版本的子系统的应用程序编程接口(API)。GDI+负责在屏幕和打印机上显示信息,它是GDI的改进,同时也是.NET框架结构的重要组成部分。...和GDI一样,它提供了对二维图形图像和文字排版处理的支持,通过GDI+能够创建与设备无关的应用程序。使用GDI+可以创建图形、绘制文本以及将图形图像作为对象来操作,旨在提高性能和易用性。...GDI+支持如下图形文件格式 ◇BMP BMP是Windows使用的一种标准格式,用于存储设备无关和应用程序无关的图像。...GIF文件每像素最多能存储8位,所以它们只限于使用256种颜色 ◇联合摄影专家组(JPEG) JPEG是一种适应于自然景观(如扫描的照片)的压缩方案。...像GIF文件一样,PNG文件在压缩时也不损失信息。PNG文件能以每像素8,24或48位来存储颜色,并以每像素1、2、4、8或16位来存储灰度。相比之下,GIF文件只能使用每像素1、2、4或8位。

    2K20

    Tmux 速成教程:技巧和调整

    在 Tmux 的窗格间移动光标也很简单,只需要先按下 Tmux 的快捷键前缀,然后再按下对应的方向键就可以让光标进入到目标窗格了。...窗口 在Tmux中,窗口是个窗格容器, 你可以将多个窗格放置在窗口中,并根据你的实际需要在窗口中排列多个窗格,也是完全取决于你的需要。...在这个 窗口中有两个窗格,一个用于 Vim,一个用于运行测试代码。最后再开启一个叫作“shell”的窗口用于通过 Bash shell 运行命令。...Tmux 的窗口功能非常实用,因为在一个窗口中可以创建出多个窗格,这样在一个窗口中就能同时查看所有窗格内容,通过这种方法可以高效地利用有限的屏幕空间。...if exists('$TMUX') set term=screen-256colorendif 在更新了配置文件 ~/.vimrc 以后,颜色应该就可以正确显示了。 ?

    4K100

    V,新编程语言来袭!与Go类似,跟C一样快

    函数可以在声明之前使用:add和sub在main之后声明,但仍然可以从main调用。对于V中的所有声明都是如此,并且不需要头文件或考虑文件和声明的顺序。...parse()方法请求扫描程序为其需要解析的文件生成令牌列表,然后逐个遍历所有的标记即可。 在V中,可以在声明之前使用对象,因此有2次传递。在第一次传递期间,它只查看声明并跳过函数体。...基于GDI+/Cocoa Drawing构建的跨平台绘图库,以及基于OpenGL的图形库,用于更复杂的2D/3D应用程序。...V有一个使用本机GUI工具包的ui模块:Windows上的WinAPI/GDI+,macOS上的Cocoa。在Linux上使用自定义绘图。 ?...根据作者介绍,V和C一样快;C interop无需任何成本;分配数量最少;没有运行时反射的内置序列化;编译本地二进制文件不需要任何依赖:一个简单的Web服务器只有65KB。

    1.4K40

    如何在Ubuntu 16.04上安装和使用Byobu进行终端管理

    Byobu的主要功能包括多个控制台窗口,每个窗口中的拆分窗格,显示主机状态的通知和状态标记,以及跨多个连接的持久会话。...接下来,让我们通过学习如何使用窗格来扩展此示例。 第7步 - 使用窗格 Byobu提供了将窗口分成多个窗格的功能,包括水平和垂直分割。这些允许您在同一窗口中进行多任务,而不是跨多个窗口。...在步骤7的示例中,使用拆分而不是窗口可以很容易地使用syslog尾部,编辑器窗口和新命令提示符,这些都在同一个窗口中打开。...updates_available 在有可用更新时显示指示符。 uptime 显示当前系统正常运行时间。 whoami 显示当前登录的用户。 选择要启用的状态通知后,选择“ 应用”。...如果您尝试在Byobu中使用具有冲突的键盘键绑定的另一个终端应用程序,这会派上用场。 CTRL+F9打开一个提示,允许您将相同的输入发送到每个窗口; SHIFT+F9对每个窗格都做同样的事情。

    10.3K00

    AutoJs6 – v6.2.0 – 安卓 JavaScript 自动化工具 (Auto.js 二次开发)

    修复 主页抽屉权限开关在提示消息对话框消失后可能出现状态未同步的问题 修复 Root 权限修改主页抽屉权限开关失败时未继续弹出 ADB 工具对话框的问题 修复 Root 权限显示指针位置在初次使用时提示无权限的问题...修复 图标选择页面的图标元素排版异常 修复 文本编辑器启动时可能因夜间模式设置导致闪屏的问题 (试修) 修复 文本编辑器设置字体大小时可用最大值受限的问题 修复 部分安卓系统脚本运行结束时日志中无法统计运行时长的问题...修复 使用悬浮窗菜单关闭悬浮窗后重启应用时悬浮窗依然开启的问题 修复 布局层次分析时长按列表项可能导致弹出菜单溢出下方屏幕的问题 修复 安卓 7.x 系统在夜间模式关闭时导航栏按钮难以辨识的问题...异常消息增加多语言支持 优化 主页抽屉权限开关仅在开启时弹出提示消息 优化 主页抽屉布局紧贴于状态栏下方避免顶部颜色条的低兼容性 优化 检查更新 / 下载更新 / 更新提示功能兼容安卓 7.x...优化 布局分析主题自适应 (悬浮窗跟随应用主题, 快速设置面板跟随系统主题) 优化 布局控件信息列表按可能的使用频率重新排序 优化 布局控件信息点击复制时根据选择器类型自动优化输出格式 优化 使用悬浮窗选择文件时按返回键可返回至上级目录而非直接关闭悬浮窗

    4.8K20

    【二】Windows API 零门槛编程指南——CreateWindow 窗口创建 “万字长篇专业术语全解”

    #include WinMain 在C语言中,每个C语言程序都有一个入口函数,在Windows桌面程序中,这个入口函数是 WinMain ,具体声明如下: int WINAPI...我们使用 WinMain作为程序的入口函数: #include int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance...[] = _T("CSDN @1_bit"); hIconSm: 窗口类关联的小图标,使用 LoadIcon函数加载,不过在文档中提示,这个函数已过时,可以使用 LoadImage 函数加载,本篇使用的是...函数在指定位置写入的字符串,利用当前选择的字体,背景颜色和文本颜色。...从窗口中删除窗口后,它将被发送到销毁窗口的窗口过程。 此消息首先发送到被销毁的窗口,然后发送到被销毁的子窗口(如果有)。在处理消息期间,可以假定所有子窗口仍然存在。

    1.1K20

    Win32C# 应用使用 PrintWindow 对窗口截图(PrintWindow)

    相比于 Windows 2000 引入到 GDI+ 中的 BitBlt 方法截取窗口图片,Windows XP 时也引入了 PrintWindow 方法来专门截取窗口,截取的原理也不同。...并且,此过程是同步进行的,如果目标窗口在处理消息时没有返回,那么这里的调用将一直挂起。...使用此方法截图时,DWM 绘制的窗口部分在真实窗口中和实际截出来的会不一样,是关掉了 Aero 效果时的窗口样式。...当然,还有可能把目标窗口截挂: 更多截窗口方法 Win32/C# 应用使用 GDI+ 对窗口截图(BitBlt) - walterlv Win32/C# 应用不依赖任何库使用纯 GDI+ 对窗口截图(...- 知乎 本文会经常更新,请阅读原文: https://blog.walterlv.com/post/win32-capture-window-using-print-window.html ,以避免陈旧错误知识的误导

    1.6K50

    UA Expert—一个功能齐全的OPC UA客户端

    根据浏览器中选择的节点,属性和参考窗口(右上窗和右下窗)显示所选节点的属性及其在服务器地址空间网格网络中的引用。 OPC UA 数据视图 默认情况下,此插件显示在 Ua 专家的中心窗格中。...您可以(多)在地址空间窗口中选择 UA 节点,然后将其拖放到 DA 视图中。DA 视图认证订阅并监控节点。采样率和订阅间隔可以通过右键单击进入 DA 视图进行更改。...单击事件时,下窗格组将根据您在配置中勾选的选定事件字段向您显示此特定事件的所有详细信息。 OPC UA 历史趋势视图 使用菜单栏中的"添加文档"按钮添加"历史视图文档"。...在循环更新模式下,您必须指定时间跨度(从现在开始向后)和 UaExpert 应获取新数据的间隔。...OPC UA 性能视图 使用菜单栏中的"添加文档"按钮添加"性能视图文档"。性能插件将显示在中心窗格中,由三个主要组组成,即配置、使用节点列表和在图形视图中显示测量结果。

    4.1K11
    领券