MFC智能提示功能(通过CEdit和CListBox组合实现)
效果图如上。
本功能只需要Edit编辑框和Listbox这两个控件组合使用即可实现。
首先为CEdit控件添加ON_EN_CHANGE消息响应函数,编辑框里的内容变化的时候会触发该函数,ListBox的内容可以在此函数中插入(因为我的软件是MFC+MSSQL的,所以我在获取了Edit控件中的字符m_str以后,会利用这个m_str来从SQL数据库中搜索包含m_str的人员你姓名:Select People_name From People Where People_name Like '%'+m_str+'%'),从而完成了Listbox内容的填充。
然后为Listbox添加ON_LBN_DBLCLK消息响应函数,此函数能够获取Listbox中你所选中的内容;
友情提示:当Listbox和别的控件重叠的时候会造成Listbox控件的显示不完整,楼主的程序中Listbox后面其实是一个Listcontrol控件,起初的显示效果如下:
这种问题怎么解决呢,其实很简单,需要做两步:
1、CTRL+D调整控件TAB顺序,使得ListBox的顺序ID靠前;
2、给后面的Listcontrol控件添加WS_CLIPSIBLINGS属性即可,添加这个属性能够保证Listcontrol控件不会刷新和其他控件重叠的部分,代码如下:
LONG style = GetWindowLong(m_listCtrlRecordInfo.GetSafeHwnd(),GWL_STYLE);
style = style | WS_CLIPSIBLINGS ;
SetWindowLong(m_listCtrlRecordInfo.GetSafeHwnd(),GWL_STYLE,style);
MFC智能提示功能(通过CEdit和CListBox组合实现)相关推荐
- 如何开发auto complete 智能提示功能
目录(?)[+] 如何开发auto complete 智能提示功能 最近网上好像流传用redis实现,其实智能提示和用什么存储关系不大 07年,我过一个类似的项目 我有几千个名字,随着用户在输入框中不 ...
- SQL Server 2008编写脚本时智能提示功能丢失的处理
SQL Server 2008编写脚本时智能提示功能丢失的处理 1.查看工具选项中[启用IntelliSense]是否打开: 选择[工具]-->[选项]打开选项页面,依次展开[文本编辑器]--& ...
- vs2008上QT中增加智能提示功能
转载:http://blog.csdn.net/reille/article/details/6699592 1. 前言 用过VS2008或其它版本的,都知道VS助手即vs assistant,它对于 ...
- html中搜索框提示语,JS实现搜索关键词的智能提示功能
最近在百度搜索的时候,当你输入一个字或者词的时候,他会给你们弹出一个下拉框出来,里面是和你相关的搜索提示 比如 我输入杨字,他会给我提示以下搜索提示 我尝试着用JavaScript做了一个类似的练习, ...
- Excel-DNA自定义函数的参数智能提示功能
Excel-DNA自定义函数的参数智能提示功能:ExcelDna.IntelliSense1.1.0.rar 解压缩后,可以看到如下3个文件. ExcelDna.IntelliSense.xll 以及 ...
- VS Code智能提示功能之Typings
一.Node.Js的Typings工具可以用于Visual Studio Code的代码补全 1.vscode 的默认只有es原声api带有自动补全的功能,现在V1.9的版本默认已经支持NodeJS的 ...
- SpringBoot2.2.2+Elasticsearch7.6.2实现中文、拼音、拼音首字母智能提示功能
一.Elasticsearch介绍 1.1 Elasticsearch是什么 Elasticsearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTfu ...
- Eclipse ganymede(3.4版)汉化 实现智能提示功能
Eclipse的英文后缀代表着Eclipse的不同版本,Eclipse Indigo(3.7版)Eclipse Helios(3.6版)Eclipse Galileo(3.5版)Eclipse Gan ...
- 达梦数据库(DM)——manage工具如何开启SQL编写智能提示功能
达梦数据库的manage客户端工具,提供了SQL编写智能提示的功能,可以实现SQL编写语法智能检查.对象定义智能提示.待输入命令智能补充的功能.该功能默认是关闭的,需要的话可以手动设置开启. 打开达梦 ...
最新文章
- 安卓x86_Android:虚拟机体验基于安卓10的BlissOS V12.2 Android X86版
- JQuery实现父级选择器(广告实现)
- 【JMAIL】jmail无法收邮件问题
- Linux系统中如何关闭触摸鼠标
- 【今日CV 计算机视觉论文速览 143期】Mon, 15 Jul 2019
- (转) java 通过 jdbc 链接 ms sql server 中出现 no suitable driver for ...
- 软件质量保证基本知识加复习建议
- oracle中rollup函数与mysql中with rollup区别
- 软件测试方法(单元测试、集成测试、系统测试、确认测试)
- Android关于微博发表微博时@好友后删除@的好友的功能实现
- Android涉及到的设计模式
- hdu5651 xiaoxin juju needs help(组合数学)
- iOS开发监测手机流量使用情况
- 如何学习三点透视?该注意什么?
- H2O机器学习平台容器化部署——基于Docker
- 甘肃省计算机二级考试试题,2013甘肃省计算机等级考试二级理论考试试题及答案...
- Duck Typing (鸭子类型)详解
- 静电场电位与电场强度matlab,基于MATLAB的静电场模拟
- PCB设计相关经验分享【From EDN China】
- 零基础入门学习Python(19)--函数:我的地盘听我的
热门文章
- 内推 | 【叫叫-数据分析师】成都 15-25K
- 2 problems (2 errors, 0 warnings) 2 errors and 0 warnings potentially fixable with the `--fix` opt
- linux中recvfrom读取速度,Linux系统调用-- recv/recvfrom 函数详解
- Autolisp程序4之土方量计算1/2
- ESXI中损坏虚拟机数据找回
- 关于苹果开发者账号申请付费流程
- JSON字符串和list集合互转
- 前端路线--Vue(day01)
- 记录一次黑客丛林通关过程
- ubuntu终止进程命令