MFC文本输出学习
void CTxttstView::OnDraw(CDC* pDC)
{CTxttstDoc* pDoc = GetDocument();ASSERT_VALID(pDoc);// TODO: add draw code for native data hereCString str1;pDC->SetBkColor(RGB(0,0,0));pDC->TextOut(50, 50, "一段文字");pDC->SetBkColor(RGB(255,255,255));pDC->TextOut(150, 50, "一段文字");pDC->SetBkColor(RGB(0,128,0));pDC->TextOut(250, 50, "一段文字");pDC->SetBkColor(RGB(0,160,0));pDC->TextOut(450, 50, "测试一段文字测试AAAAAAA");pDC->SetBkColor(RGB(0,180,0));pDC->TextOut(50, 80, "一段文字2", 4);pDC->SetTextAlign(TA_LEFT);pDC->SetBkColor(RGB(0,180,0));pDC->TextOut(50, 110, "一段文字3");CRect r1(50,150,200,200);pDC->Rectangle(r1);pDC->DrawText("一段文字d", r1, DT_SINGLELINE | DT_CENTER | DT_VCENTER);CRect r2(50,210,200,260);pDC->Rectangle(r2);pDC->DrawText("一段文字d", r2, DT_SINGLELINE | DT_LEFT | DT_VCENTER);CRect r3(50,270,200,320);pDC->Rectangle(r3);pDC->DrawText("一段文字d", r3, DT_SINGLELINE | DT_RIGHT | DT_VCENTER);int iArray[] = {100,200,300,400,500};pDC->TabbedTextOut(10,340,TEXT("测试\t中文\t你好\t汉字\t在这\t里!"),-1,5,iArray,0);pDC->TextOut(10, 360, TEXT("测试\t中文\t你好\t汉字\t在这\t里!"));int iArray2[] = {10,20,30,40,50};pDC->TabbedTextOut(10,380,TEXT("测试\t中文\t你好\t汉字\t在这\t里!"),-1,5,iArray2,0);}
获取了CDC类指针之后可以设置一些属性,再输出文字;
SetBkColor(RGB(0,0,0)),这样设置文本输出背景色;对于TextOut来说设置背景的区域和输出文字的区域一样大小;
TextOut一般用前3个参数,x坐标、y坐标、输出的文字,也可以使用第4个参数,输出多少个字符;pDC->TextOut(50, 80, "一段文字2", 4),一个汉字是2个字符,这只输出了“一段”;
SetTextAlign,设置文本对齐方式,对于TextOut没有什么效果;
DrawText在一个矩形内输出文字,第一个参数是要输出的文字,第二个参数是一个矩形,第三个参数是文字对齐等一些属性;图中的矩形是额外画的,为了看到DrawText效果;第二个参数如果是用CRect类定义的,CRect r1(50,150,200,200) 这样,直接传递r1就可;
TabbedTextOut 函数在指定位置写入字符串,将制表符扩展到制表位位置数组中指定的值;
我还不太理解此函数;
pDC->TabbedTextOut(10,340,TEXT("测试\t中文\t你好\t汉字\t在这\t里!"),-1,5,iArray,0);
头2个参数是x和y坐标,第三个参数是要输出的文字,可以包含制表符\t;后一个参数是要输出的文字长度,-1表示全部输出;此函数需要一个整型数组作为参数,再后一个参数是数组中的值数,再后一个参数是数组的指针;
根据文档,数组是制表位位置(以逻辑单元为单位)的数组; 制表位必须按升序排列,最小的 x 值应该是数组中的第一项;
最后一个参数是展开制表符的起始位置的 x 坐标(以逻辑单元为单位);
从效果看制表符对TextOut无效;传2个不同数组的效果如图;
另外还有一个ExtTextOut函数是在TextOut的基础上增加了字符间距、背景颜色和裁剪框进行控制;有时间再看;
相关文章:
MFC文本输出学习
void CTxttstView::OnDraw(CDC* pDC) {CTxttstDoc* pDoc GetDocument();ASSERT_VALID(pDoc);// TODO: add draw code for native data hereCString str1;pDC->SetBkColor(RGB(0,0,0));pDC->TextOut(50, 50, "一段文字");pDC->SetBkColor(RGB(255,255,255))…...
Python 数据分析与挖掘(一)
Python 数据分析与挖掘(数据探索) 数据探索 1.1 需要掌握的工具(库) 1.1.1 Nump库 Numpy 提供多维数组对象和各种派生对象(类矩阵),利用应用程序接口可以实现大量且繁琐的数据运算。可以构建…...
【问题证明】矩阵方程化为特征值方程求得的特征值为什么是全部特征值?不会丢解吗?
问题 这个问题困扰了我好久,一直感觉如果有其他的特征值没法证伪,不过一直存在思想的层面,没有实际解决,今天突然想到动笔来解决,遂得解,证明如下。 证明 总结 这个证明看似证明过后很直观,但…...
虹科干货 | 不是吧,Redis Enterprise也能当向量数据库来用?
什么是向量相似性搜索啊? 例如,你需要搜索一棵发财树的图片,如果用传统数据库来检索,你大概率会在茫茫树丛中错失心仪的发财树。但是,向量相似性搜索能用向量来表示所有树的特征,这样就能够通过计算向量之间…...
汽车驾驶 - 四梁六柱是什么
汽车的四梁六柱指的是车辆的两个前纵梁,两个后纵梁和ABC柱。虽然不像车辆上的发动机变速箱这些部件出镜率那么高,但这几个部位的重要作用可一点都不含糊。一辆车在碰撞时能够受力起到保护左右的就是四梁六柱,对我们汽车的安全性起到至关重要的…...
CI522 13.56MHZ电动车NFC测试资料
Ci522是一颗工作在13.56MHz频率下的非接触式读写芯片,支持读A卡(CI523支持读A/B卡),可做智能门锁、电动车NFC一键启动、玩具NFC开锁等应用。为部分要求低成本,PCB小体积的产品提供了可靠的选择。 Ci522与Si522/MFRC52…...
【微信小程序开发】一文学会使用CSS样式布局与美化
引言 在微信小程序开发中,CSS样式布局和美化是非常重要的一部分,它能够为小程序增添美感,提升用户体验。本文将介绍如何学习使用CSS进行样式布局和美化,同时给出代码示例,帮助开发者更好地掌握这一技巧。 一、CSS样式布…...
漏刻有时物联网环境态势感知大数据(设备列表、动态折线图)
物联网环境下的态势感知是指对物联网环境中的各种要素进行全面、实时、准确的监测、分析和预测,以实现网络态势的全面掌握和安全威胁的及时响应和处理。具体而言,态势感知以物联网环境为基础,利用各类传感器、数据采集设备和其他相关工具,对物联网设备、资产、数据流等进行…...
【力扣】单调栈:901. 股票价格跨度
【力扣】单调栈:901. 股票价格跨度 文章目录 【力扣】单调栈:901. 股票价格跨度1. 题目介绍2. 思路3. 解题代码参考 1. 题目介绍 设计一个算法收集某些股票的每日报价,并返回该股票当日价格的 跨度 。 当日股票价格的 跨度 被定义为股票价格…...
4_使用预训练模型 微调训练CIFAR10
使用预训练模型 微调训练CIFAR10 1. VGG 准备工作import torch from torch import nn import torchvision from torchvision import models from torchvision import datasets, transforms from datetime import datetime from tqdm import tqdm from torchsummary import sum…...
机器学习笔记(一)
1.线性回归模型 2. 损失函数 3.梯度下降算法 多元特征的线性回归 当有多个影响因素的时候,公式可以改写为: 当有多个影响因素的时候为了方便计算,可以使用 Numpy下面的点积方法, np.dot(w,x) 最后再加个b 就省略了很多书写步骤,这叫做矢量化 多元回归的梯度下降 左边是一…...
学习在原地打转的原因与解决 如何步步为营 一日千里快速进步 考研工程计算 1万小时=416.666666667 天
学习在原地打转的原因可能有很多。以下是一些常见的原因: 缺乏明确的目标:如果没有明确的学习目标,人们往往会感到迷失和困惑。没有一个明确的方向,就很难做出有针对性的努力,从而导致学习进展缓慢。 学习方法不当&a…...
194、SpringBoot --- 下载和安装 Erlang 、 RabbitMQ
本节要点: 一些命令: 小黑窗输入: rabbitmq-plugins enable rabbitmq_management 启动控制台插件 rabbitmq-server 启动rabbitMQ服务器 管理员启动小黑窗: rabbitmq-service install 添加rabbitMQ为本地服务 启动浏览器访问 htt…...
机器学习7:pytorch的逻辑回归
一、说明 逻辑回归模型是处理分类问题的最常见机器学习模型之一。二项式逻辑回归只是逻辑回归模型的一种类型。它指的是两个变量的分类,其中概率用于确定二元结果,因此“二项式”中的“bi”。结果为真或假 — 0 或 1。 二项式逻辑回归的一个例子是预测人…...
Java应用程序中如何实现FTP功能 | 代码示例和教程
原为地址:https://www.toymoban.com/diary/java/363.html 在Java应用程序中实现FTP功能需要使用FTPClient类和相关方法。下面是实现三个主要功能的示例代码: 1)显示FTP服务器上的文件: void ftpList_actionPerformed(ActionEv…...
kotlin:list的for循环
代码: var list { "a", "b", "c" } for (i in list.indices) {print("app"i""list[i]) }...
asp.net电影院选座系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio
一、源码特点 asp.net电影院选座系统 是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语言开发 asp.net电影院选座系统1 二、功能介…...
CSS鼠标指针表
(机翻)搬运自:cursor - CSS: Cascading Style Sheets | MDN (mozilla.org) 类型Keyword演示注释全局autoUA将基于当前上下文来确定要显示的光标。例如,相当于悬停文本时的文本。default 依赖于平台的默认光标。通常是箭头。none不会渲染光标。链接&状态contex…...
树的基本概念及二叉树
目录 一、树的基本概念 (1)树的结点 (2)度 (3)结点层次 (4)树的高度 树的特点: 二、二叉树 (1)满二叉树 (2)完…...
BUUCTF Basic 解题记录--BUU XXE COURSE
1、XXE漏洞 初步学习,可参考链接: 一篇文章带你深入理解漏洞之 XXE 漏洞 - 先知社区 2、了解了XXE漏洞,用burpsuite获取到的url转发给repeater,修改XML的信息,引入外部实体漏洞,修改发送内容,…...
TNTSearch 实战案例:构建电商产品搜索系统的完整流程
TNTSearch 实战案例:构建电商产品搜索系统的完整流程 【免费下载链接】tntsearch A fully featured full text search engine written in PHP 项目地址: https://gitcode.com/gh_mirrors/tn/tntsearch TNTSearch 是一个功能强大的 PHP 全文搜索引擎ÿ…...
【由浅入深探究langchain】第十七集-构建你的首个 RAG 知识库助手(从文档索引到检索增强生成)
前言在大语言模型(LLM)爆火的今天,我们常常会被 GPT 或 Claude 展现出的博学所惊叹。然而,当你试着问它“我公司昨晚新发布的财务报表数据是多少?”或者“我上周在笔记里写的某个私人计划是什么?”时&#…...
3个步骤实现微信消息永久保存,高效保护重要沟通记录
3个步骤实现微信消息永久保存,高效保护重要沟通记录 【免费下载链接】RevokeMsgPatcher :trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了) 项目地址: https://gitcode.com/…...
从‘玩具项目’到‘线上产品’:我的Vue3项目在阿里云ECS上线的完整踩坑记录(含Nginx配置)
从本地开发到云端部署:Vue3项目实战全流程解析 第一次将自己的Vue项目部署到线上时,我盯着浏览器里那个404错误页面整整发呆了十分钟。作为一个刚完成基础学习的开发者,我原以为按照教程一步步操作就能顺利上线,但现实却给了我当头…...
低资源部署DeepSeek-R1:苹果A17实测120 tokens/s推理速度
低资源部署DeepSeek-R1:苹果A17实测120 tokens/s推理速度 1. 模型概述 DeepSeek-R1-Distill-Qwen-1.5B是DeepSeek团队基于80万条R1推理链样本对Qwen-1.5B进行知识蒸馏得到的轻量级模型。这款"小钢炮"模型仅1.5B参数却能达到7B级模型的推理能力ÿ…...
vLLM-v0.17.1与卷积神经网络(CNN)结合:多模态理解新思路
vLLM-v0.17.1与卷积神经网络(CNN)结合:多模态理解新思路 1. 多模态AI的行业痛点与解决方案 计算机视觉和自然语言处理长期作为AI两大独立分支发展,但在实际业务场景中,图像与文本的协同理解需求日益凸显。传统方案通…...
从ResNet到mHC:DeepSeek重构残差连接,额外开销仅6.7%,附复现代码
2015年,由微软亚洲研究院的何恺明团队提出ResNet,ResNet引入残差连接的概念,用以解决深层神经网络训练中的梯度消失/爆炸和网络退化问题,使得训练极深的网络成为可能。 ��1��&#x…...
AI 培训报名:主流机构专业度对比分析
引言 随着人工智能技术的快速发展,AI 培训市场也日益火爆。无论是企业还是个人,都希望通过专业的培训来提升对 AI 技术的应用能力。然而,当前 AI 培训市场鱼龙混杂,机构众多,质量参差不齐。企业和个人在选择 AI 培训机…...
Q345A、Q345B、Q345C、Q345D、Q345E钢材的性能差异分析
Q345A、Q345B、Q345C、Q345D、Q345E 钢材的性能差异分析 Q345是一种钢材的材质。它是低合金钢(C<0.2%),广泛应用于建筑,桥梁、车辆、船舶、压力容器等。Q代表的是这种材质的屈服强度,后面的345,就是指这种材质的屈服值,在345MPa左右。并会随着材质的厚度的增加而使其…...
Go语言中的工具链:从go build到go generate
Go语言中的工具链:从go build到go generate 前言 作为一个在小厂挣扎的Go后端老兵,我对工具链的理解就一句话:能自动化的绝不手动。 想当年在大厂时,工具链那叫一个完善,从代码编译到部署上线,全程自动化。…...
