社区
界面
帖子详情
请教:怎样实现CEdit控件得到焦点后高亮显示?
xiaok405
2007-06-28 09:43:28
如题,小弟需要实现的功能是::
Edit控件得到焦点后,里面内容由 白底黑字转成黑底白字?
请各位大哥大姐们帮忙看看啊!!
...全文
418
10
打赏
收藏
请教:怎样实现CEdit控件得到焦点后高亮显示?
如题,小弟需要实现的功能是:: Edit控件得到焦点后,里面内容由 白底黑字转成黑底白字? 请各位大哥大姐们帮忙看看啊!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
向立天
2010-10-14
打赏
举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了
疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知
见此回复三日内无回应
我们将强制结帖
相关规定详见界面
界面版关于版主结帖工作的具体办法
向立天
2010-09-15
打赏
举报
回复
就是设置选中么
你动手试一下就知道了
代码就这么两句
linbuilder
2010-09-15
打赏
举报
回复
如题,常规做法是在消息入口OnEnSetfocusEdit2()中直接设置(SetSel(0, -1);SetFocus();),
但经过反复试验,此方法不可行,
分析原因可能是windows会自动将输入光标设置在鼠标点击的位置,而不是全选的状态,
所以我这里采用了满天过海之计,即截获此消息,在消息处理前就做好设置,然后直接返回,代码如下:
BOOL CEditSelAllDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: 在此添加专用代码和/或调用基类
if (WM_LBUTTONDOWN == pMsg->message)
{
// 接受焦点前,直接将此控件设置为全选(高亮)状态即可,不再继续处理直接返回
CRect rect;
((CEdit *)GetDlgItem(IDC_EDIT2))->GetWindowRect(&rect);
if (rect.PtInRect(pMsg->pt))
{
((CEdit *)GetDlgItem(IDC_EDIT2))->SetSel(0, -1);
((CEdit *)GetDlgItem(IDC_EDIT2))->SetFocus();
return TRUE;
}
}
return CDialogEx::PreTranslateMessage(pMsg);
}
Eleven
2010-09-15
打赏
举报
回复
你编辑框得到焦点后,调用CEdit::SetSel()
qiuchengw
2010-09-15
打赏
举报
回复
自绘制。
xiaok405
2007-06-28
打赏
举报
回复
继续等待中~~~~ 期待ing!~~~
xiaok405
2007-06-28
打赏
举报
回复
谢谢啊,,能不能具体点啊?最好能给点 代码啊?
小弟加了三个edit控件,用VK_DOWN控制光标获取焦点,(程序如下),
如何实现由白底黑字改为黑底白字啊??
从哪里下手啊??怎么改?小弟一片茫然! 请给盏明灯啊~
BOOL CTestDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
if( pMsg->message>=WM_KEYDOWN && pMsg->message<=WM_KEYUP)
{
this->SendMessage(pMsg->message,pMsg->wParam,pMsg->lParam);
return TRUE;
}
else
return CDialog::PreTranslateMessage(pMsg);
}
void CTestDlg::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
CWnd*pWnd = GetFocus();
UINT nCtrlID = pWnd->GetDlgCtrlID();
switch(nChar)
{
case VK_DOWN:
{
switch( nCtrlID )
{
case IDC_EDIT1:
GetDlgItem(IDC_EDIT2)->SetFocus();
break;
case IDC_EDIT2:
GetDlgItem(IDC_EDIT3)->SetFocus();
break;
case IDC_EDIT3:
GetDlgItem(IDC_EDIT1)->SetFocus();
break;default:
break;
}
}
break;
default:
break;
}
CDialog::OnKeyDown(nChar, nRepCnt, nFlags);
}
TieShou
2007-06-28
打赏
举报
回复
SetFocus
SetSel
lzf8977
2007-06-28
打赏
举报
回复
也就是让它全选,,
lzf8977
2007-06-28
打赏
举报
回复
CEdit m_edit ;
m_edit.SetFocus() ;
m_edit.SetSel(0,-1) ;
得到
C
EDIT
控件
鼠标的行列号
使用VC编写的,
得到
C
EDIT
空间中鼠标点击时的行列号,并显示。
MFC的C
Edit
控件
技术学习]MFC的C
Edit
控件
中
实现
复制、粘贴、剪切等操作的快捷键
VC C
Edit
控件
文本滚动显示
经过反复实验,测试,总结出很完善的编程经验,现分享。 1.文件为TXT格式,方便代码的复制粘贴 2.
实现
功能:用MFC自带的
控件
,
实现
文本多行滚动显示,适合于显示大量信息的场合,类似VS调试窗口 3.解决相关的问题: a.使用VS自带
控件
,方便快捷稳定 b.运行效率高,显示速度快,不闪烁,不上下刷屏 c.如果文字数超过文本框最大限制则自动删除最前面的内容
一个精美的C
Edit
控件
一个精美的
Edit
控件
(可以
实现
仅支持整型、无符号整型、浮点型、无符号浮点型)
VC++ C
EDIT
控件
重绘,插入背景图
VC++重绘C
EDIT
控件
,在
控件
里面插入背景图,可以直接用EVC VS2008打开,
界面
15,978
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章