carlzj 2015-01-20 14:02 采纳率: 100%
浏览 3569
已采纳

MFC中如何点击按钮然后复制编辑框中书写的文字。

使用了这么一段代码,结果运行的时候如果编辑框中是英文字母,只复制了第一个字母,如果是中文,复制的结果是乱码。求解具体怎么改。谢谢各位

void CMFCApplication2Dlg::OnBnClickedButCpy()
{
// TODO: 在此添加控件通知处理程序代码
CString source;
GetDlgItemText(IDC_EDI_TEXT, source);
if (OpenClipboard())
{
HGLOBAL clipbuffer;
char buffer;
EmptyClipboard();
clipbuffer = GlobalAlloc(GMEM_DDESHARE, source.GetLength() + 1);
buffer = (char
)GlobalLock(clipbuffer);
strcpy(buffer, (const char *)source.GetBuffer());
GlobalUnlock(clipbuffer);
SetClipboardData(CF_TEXT, clipbuffer);
CloseClipboard();
}
}

  • 写回答

7条回答 默认 最新

  • threenewbee 2015-01-20 14:18
    关注

    no
    hText = GetDlgItem(IDC_EDI_TEXT);
    SendMessage(hText, WM_COPY, 0, 0);

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥20 双层网络上信息-疾病传播