VC++中剪贴板Clipboard的头文件和实现代码怎么写

VC++中剪贴板Clipboard的头文件和实现代码怎么写,第1张

把文本放置到剪贴板上镇拆正御悔:

CString source

//put your text in source

if(OpenClipboard())

{

HGLOBAL clipbuffer

char * buffer

EmptyClipboard()

clipbuffer = GlobalAlloc(GMEM_DDESHARE, source.GetLength()+1)

buffer = (char*)GlobalLock(clipbuffer)

strcpy(buffer, LPCSTR(source))

GlobalUnlock(clipbuffer)

SetClipboardData(CF_TEXT,clipbuffer)

CloseClipboard()

}

从剪接板上获取文本御巧:

char * buffer

if(OpenClipboard())

{

buffer = (char*)GetClipboardData(CF_TEXT)

//do something with buffer here

//before it goes out of scope

}

CloseClipboard()

如果你要调WINSER.H中的OpenClipboard( HWND hWndNewOwner)

你应该加上作用域察迅,及这样写::OpenClipboard( m_hwnd) 。

如果你要行没颤调档败用AFXWIN.H中的OpenClipboard。

你就直接这样写: m_hwnd.OpenClipboard()。

永远不要修改系统的头文件。

失败原顷扰因:

一般是与系统安装的软件产生冲突所致慎颤。

解决方法:

关闭所有外在软件,再进行测试。

如果以前能用,那么可能不注意删除了一些文件,直接点安装文件,选择修复即可。

如果没有得到解决建议卸载干净以后重装。宽乎败

openclipboard:如果一个应用程序调用OpenClipboard,HWND设置为NULL,EmptyClipboard设置剪贴板所有者为NULL,这会导致SetClipboardData失败。

参考资料

百度文库:https://wenku.baidu.com/view/d566ed82a76e58fafbb0033f.html


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12263076.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存