首页 > 编程语言 >RichEdit 选中文本的高亮显示 VC++

RichEdit 选中文本的高亮显示 VC++

时间:2023-08-12 09:03:11浏览次数:30  
标签:EM 控件 高亮 RichEdit C++ 选中 WS 文本

RichEdit控件失去焦点后,选中文本不再高亮显示。

有两种方法可以改变,使得控件失去焦点仍然保持高亮:

方法一:创建控件时设置ES_NOHIDESEL风格

m_hWndREdit = CreateWindow(_T("RichEdit20W"), NULL,  //RICHEDIT_CLASS  RichEdit20A RichEdit20W
        WS_CHILD | WS_VISIBLE | ES_MULTILINE | WS_VSCROLL|ES_NOHIDESEL,  //始终高亮显示选中
        0, 0, 0, 0,
        m_hWnd, (HMENU)IDC_EDITMSG2, m_hInst, NULL);

 

方法二:发EM_HIDESELECTION消息

SendMessage(m_hWndREdit, EM_HIDESELECTION, 0, 0);  //保持选中文本的高亮

SendMessage(m_hWndREdit, EM_HIDESELECTION, 1, 0);  //取消文本的高亮,使得立即看到效果

 

实际用方法二更方便,一般会有两种场景:

1.查找,这时需要保持高亮,以便操作查找对话框时,能清楚看到目标

2.设置字体,这时不要保持高亮,以便设置后立即能看到效果,特别是颜色,而不是还要另外取消选中才能看到效果。

 

 

标签:EM,控件,高亮,RichEdit,C++,选中,WS,文本
From: https://www.cnblogs.com/xgz21/p/17624304.html

相关文章

  • C++实现一键关闭桌面
    方法一:C++关闭桌面,explorer.exe#include<Windows.h>#include<TlHelp32.h>#include"resource.h"#pragmawarning(disable:4996)voidtaskkill(constchar*name){ HANDLEinfo_handle=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);//拍摄系统中所有进......
  • c++11特性汇总
    c++11/14/17新特性参考C++11系列-什么是C++11大丙教程目录1、关键字及新语法1.1、auto关键字及用法1.2、nullptr关键字及用法1.3、for循环语法2、智能指针内存管理2.1、std::shared_ptr2.2、std::weak_ptr2.3、std::unique_ptr3、文件IO3.1、标准......
  • C++快速排序
    快速排序介绍:基础思路:首先快速排序是由冒泡排序所改进的,都是通过多次比较和交换来实现排序,但快速排序是通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,分别对这两部分记录继续进行排序,以达到整个序列有序。思路详解:(1)首先我们先设定......
  • [转]c++ function使用方法
    原帖:https://blog.csdn.net/myRealization/article/details/111189651 cppreference https://en.cppreference.com/w/cpp/utility/functional/functionboost源码剖析之:泛型函数指针类boost::functionhttps://blog.csdn.net/pongba/article/details/1560773c++模板偏特化 h......
  • WEB实战手册-基于C++(1)
    目录oat++oat++oat++是一个轻量级高性能Web服务开发框架,采用纯C++编写而成。特性:特性快速零依赖异步服务器,高性能,在单个服务器上同时处理超过500万个WebSocket连接多线程服务器(简单的API)连接无感知,可以使用任何传输类型,无论是SSL后端、套接字......
  • C++欧几里得算法求最大公约数和最小公倍数
    定义最大公约数即为GreatestCommonDivisor,常缩写为gcd。一组整数的公约数,是指同时是这组数中每一个数的约数的数。一组整数的最大公约数,是指所有公约数里面最大的一个。那么如何求最大公约数呢?我们先考虑两个数的情况。欧几里得算法过程如果我们已知两个数\(a\)和\(......
  • 文本关键词高亮-vue版本
    、、<template><div><div><inputtype="text"@keyup.enter="mark"></div><divref="text"style="height:200px;overflow:auto"v-html="html"></div>......
  • C++ 20新版本的重大更新来了
    作为Google和Microsoft使用的核心编程语言,C++新版本获得了国际标准化组织的批准。国际标准化组织(ISO)C++工作组,即第21工作组(WG21),已同意发布C++20版本的最终版内容。对于这个有着35年历史的C++编程语言,这是自2017年发布C++17版本后的首次重大更新。WG21C++ISO委员会......
  • 关于dev c++显示中文不显示,乱码和生成的可执行文件中文乱码
    1.不显示中文工具----编译器选项----显示-----去掉底下的复选框(第一个consolas下面)2,运行窗口中文乱码方法:1、工具—编译选项2、在第一个框中填入-fexec-charset=gbk3、勾选“编译器加入以下命令”4、重新编译一次以后运行。  ......
  • C++ 各代版本以及主要区别
    和大家平时用的APP等一样,编程语言每隔一段时间也需要重新制定标准。C++作为老牌编程语言,有着丰富的STL库以及比较规范的语法,是一个比较受欢迎且适合初学者接触编程时的第一个语言,本文简单介绍一下C++的主要版本更替,以及C++11标准和之前的有何区别。版本更替1.C++98第一版ISO/IEC......