我MFC做了一个画图板,但不知道如何可以实现一个输入文字的功能?

rwujie 2006-09-12 10:46:37
就是象一般的画图板一样,可以输入文字,不知道各位老鸟有没有做过呢?该如何做,请赐教。
...全文
628 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
rwujie 2007-01-11
  • 打赏
  • 举报
回复
void CTest10View::OnInitialUpdate()
{
CView::OnInitialUpdate();

// TODO: Add your specialized code here and/or call the base class
CRect rect(100,100,160,120);
edit.Create( WS_CHILD | WS_BORDER,rect,this,IDC_EDIT);

}
这是什么意思呀?
jichengsuda 2006-12-07
  • 打赏
  • 举报
回复
shl6894 好强啊!!!!!!!!!!!!
rwujie 2006-12-05
  • 打赏
  • 举报
回复
to shl6894:

为什么我在VC++中的CTest10View中不能添加OnInitialUpdate() ,这个函数是自带的消息处理函数?还是你自己创建的函数?
firein 2006-12-04
  • 打赏
  • 举报
回复
恩啊
一分之千 2006-12-04
  • 打赏
  • 举报
回复
可以按照如下方法进行,不过功能比较简单,楼主可以自己扩展
.h
public:
CEdit edit;
CPoint m_ptPoint;
.cpp

#define IDC_EDIT WM_USER+1


void CTest10View::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
static int flag=0;
if(!flag)
{
CRect rect(point.x,point.y,point.x+400,point.y+60);
edit.MoveWindow(&rect,TRUE);
edit.ShowWindow(SW_SHOW );
edit.SetFocus();
m_ptPoint=point;
flag=1;
}
else
{
CString str;
GetDlgItemText(IDC_EDIT,str);
CDC *pDC=GetDC();
edit.ShowWindow(SW_HIDE);
pDC->TextOut(m_ptPoint.x,m_ptPoint.y,str);
flag=0;
}

CView::OnLButtonDown(nFlags, point);
}
void CTest10View::OnInitialUpdate()
{
CView::OnInitialUpdate();

// TODO: Add your specialized code here and/or call the base class
CRect rect(100,100,160,120);
edit.Create( WS_CHILD | WS_BORDER,rect,this,IDC_EDIT);

}
rwujie 2006-12-04
  • 打赏
  • 举报
回复
楼上的,本人还是菜鸟级别的,请指教下面的功能如何用代码完成?
当用鼠标点下的时候 就在鼠标点的地方动态创建一个EDIT,但是这个EDIT是不可见的,或者你可以设置为一个别的样式。
用这个edit来接收你输入的文, 当按下回车 或者鼠标点击到别的区域的时候,就把该EDIT所接收的文字textout到你第一次用鼠标点中的位置。
一分之千 2006-11-30
  • 打赏
  • 举报
回复
楼上的你说的也太精简了吧。悟性还没有到那种程度。
==================================
已经说的很详细了啊?
当T被选中的时候就表示你要输入文字了呗?
这时候你可以用鼠标到编辑区域选择输入点。当用鼠标点下的时候 就在鼠标点的地方动态创建一个EDIT,但是这个EDIT是不可见的,或者你可以设置为一个别的样式。
用这个edit来接收你输入的文, 当按下回车 或者鼠标点击到别的区域的时候,就把该EDIT所接收的文字textout到你第一次用鼠标点中的位置。
devinside 2006-11-30
  • 打赏
  • 举报
回复
mark
rwujie 2006-11-29
  • 打赏
  • 举报
回复
楼上的你说的也太精简了吧。悟性还没有到那种程度。
neosu 2006-11-29
  • 打赏
  • 举报
回复
原来做过一个
选文字工具"T"
在画布上点击
生成一个Edit框接收输入
完成后得到内容, 用TextOut画在界面上
rwujie 2006-11-29
  • 打赏
  • 举报
回复
不是那么简单的,还要设置光标,就是和微软自带的画图板功能一样,在画图的过程中,如果要输入文字,就只要选择对应的工具,然后选择输入的位置,这样就可以把文字输如了,谁有没有源程序?
jixingzhong 2006-09-12
  • 打赏
  • 举报
回复
可以用很多中方法...

比如:
加一个字体设置 CFontDialog,
用一个 CString 保存用户的输入(WM_CHAR消息接收并保存)
然后用 DC 显示就是了

16,547

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧