改VS2008 MFC项目 C语言1改字体,2颜色,3界面禁用项 CCM4202S量产SP下载工具 天津国芯

本文主要是介绍改VS2008 MFC项目 C语言1改字体,2颜色,3界面禁用项 CCM4202S量产SP下载工具 天津国芯,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

效果
在这里插入图片描述

1改字体

用progresss上画文字,并改字体及大小
要修改 DrawText 函数绘制文本的字体大小,你需要在绘制之前设置设备上下文的字体。这里是一个完整的示例,展示了如何在使用 DrawText 函数之前设置字体大小。

假设你已经有一个 HDC 设备上下文 (hDc) 和一个文本字符串 (szText),以及用于绘制文本的矩形区域 (rectClient)。你可以按照以下步骤来设置字体大小:

  1. 创建一个 LOGFONT 结构并设置字体大小
  2. 使用 CreateFont 函数创建一个新的字体
  3. 选择新的字体到设备上下文
  4. 绘制文本
  5. 恢复之前的字体并清理资源

以下是示例代码:

#include <windows.h>// 绘制文本并设置字体大小的函数
void DrawTextWithFont(HDC hDc, LPCTSTR szText, RECT rectClient, int fontSize)
{// 创建并设置字体LOGFONT lf = {0};lf.lfHeight = fontSize; // 设置字体高度lstrcpy(lf.lfFaceName, _T("Arial")); // 设置字体名称HFONT hFont = CreateFontIndirect(&lf); // 创建字体if (hFont){HFONT hOldFont = (HFONT)SelectObject(hDc, hFont); // 选择新的字体// 绘制文本DrawText(hDc, szText, -1, &rectClient, DT_VCENTER | DT_CENTER | DT_SINGLELINE);// 恢复之前的字体SelectObject(hDc, hOldFont);DeleteObject(hFont); // 删除字体对象}
}

使用示例

void SomeDrawingFunction(HDC hDc)
{RECT rectClient = {10, 10, 200, 40}; // 设置绘制区域LPCTSTR szText = _T("Hello, World!");int fontSize = 24; // 设置字体大小为 24 像素DrawTextWithFont(hDc, szText, rectClient, fontSize);
}

解释

  1. 设置字体大小

    • LOGFONT 结构中的 lfHeight 成员指定了字体的高度。字体的高度是以像素为单位的。在 Windows 中,lfHeight 表示的是字符的高度,包括字符的上升和下降部分,所以实际的字符高度可能比 lfHeight 小一些。
  2. 创建和选择字体

    • CreateFontIndirect 函数使用 LOGFONT 结构创建字体,并返回一个 HFONT 对象。
    • SelectObject 函数将新的字体选择到设备上下文中,之前的字体会被返回,你需要保存并在绘制完成后恢复它。
  3. 清理资源

    • 使用 DeleteObject 函数删除不再使用的字体对象,以释放资源。

通过这种方式,你可以设置 DrawText 函数绘制的文本的字体大小。如果你有任何问题或需要进一步的帮助,请告诉我!

2颜色

00FF00

3界面禁用项

disable就行

这篇关于改VS2008 MFC项目 C语言1改字体,2颜色,3界面禁用项 CCM4202S量产SP下载工具 天津国芯的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1092213

相关文章

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

pycharm跑python项目易出错的问题总结

《pycharm跑python项目易出错的问题总结》:本文主要介绍pycharm跑python项目易出错问题的相关资料,当你在PyCharm中运行Python程序时遇到报错,可以按照以下步骤进行排... 1. 一定不要在pycharm终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装

Go语言中json操作的实现

《Go语言中json操作的实现》本文主要介绍了Go语言中的json操作的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录 一、jsOChina编程N 与 Go 类型对应关系️ 二、基本操作:编码与解码 三、结构体标签(Struc

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

MyCat分库分表的项目实践

《MyCat分库分表的项目实践》分库分表解决大数据量和高并发性能瓶颈,MyCat作为中间件支持分片、读写分离与事务处理,本文就来介绍一下MyCat分库分表的实践,感兴趣的可以了解一下... 目录一、为什么要分库分表?二、分库分表的常见方案三、MyCat简介四、MyCat分库分表深度解析1. 架构原理2. 分

python语言中的常用容器(集合)示例详解

《python语言中的常用容器(集合)示例详解》Python集合是一种无序且不重复的数据容器,它可以存储任意类型的对象,包括数字、字符串、元组等,下面:本文主要介绍python语言中常用容器(集合... 目录1.核心内置容器1. 列表2. 元组3. 集合4. 冻结集合5. 字典2.collections模块

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

linux查找java项目日志查找报错信息方式

《linux查找java项目日志查找报错信息方式》日志查找定位步骤:进入项目,用tail-f实时跟踪日志,tail-n1000查看末尾1000行,grep搜索关键词或时间,vim内精准查找并高亮定位,... 目录日志查找定位在当前文件里找到报错消息总结日志查找定位1.cd 进入项目2.正常日志 和错误日