在封装读取剪贴板的时候,执行测试代码时遇到个错误:

pywintypes.error: (1418, 'GetClipboardData', '\xcf\xdf\xb3\xcc\xc3\xbb\xd3\xd0\xb4\xf2\xbf\xaa\xb5\x

代码:

#encoding=utf-8
import win32clipboard as w
import win32con
import time
class Clipboard(object):
#模拟Windows设置剪贴板 #读取剪贴板
@staticmethod
def getText():
#打开剪贴板
w.OpenClipboard()
#获取剪贴板中的数据
content=w.GetClipboardData(win32con.CF_TEXT)
#关闭剪贴板
w.CloseClipboard()
#返回剪贴板数据
return content #设置剪贴板内容
@staticmethod
def setText(aString):
#打开剪贴板
w.OpenClipboard()
#清空剪贴板
w.EmptyClipboard()
#将数据aString写入剪贴板
w.SetClipboardData(win32con.CF_UNICODETEXT,aString)
#关闭剪贴板
w.CloseClipboard()
if __name__=='__main__':

    Clipboard.setText(u'hey buddy!')
print Clipboard.getText()

然后在网上查,是因为设置了剪贴板内容之后,马上就读取剪贴板内容的话,可能这时候剪贴板的内容还没设置好,读取不到内容就会报错,

需要在设置剪贴板之后等几秒钟。

测试改成:

if __name__=='__main__':

    Clipboard.setText(u'hey buddy!')
#time.sleep(3)
print Clipboard.getText()

结果:

C:\Python27\python.exe D:/test/hybrid_version2/util/keyboard.py
hey buddy!

Process finished with exit code 0

												

最新文章

  1. Vertica参数的设置
  2. vim入门过程
  3. hdoj 2037 今年暑假不AC
  4. spark(1.1) mllib 源代码分析
  5. Disassembly3:variable
  6. js——数组操作
  7. i386 x86_64 armv7 arm64
  8. spring项目获取ServletContext
  9. 通过xml文件来设置动画
  10. grep正则表达的零宽断言
  11. c# 导入导出excel表格式
  12. C 语言assert使用
  13. OPEN(SAP) UI5 学习入门系列之三:MVC (上) - 模型
  14. selenium之css定位
  15. CSS3学习之linear-gradient(线性渐变)
  16. mysql 权限的相应修改
  17. 构建web应用
  18. 图解HTTP第六章:HTTP首部
  19. HDU2222 Keywords Search —— AC自动机
  20. Dialog共通写法(一个button)

热门文章

  1. centos6.8升级python3.5.2
  2. 基于pandas python的美团某商家的评论销售(数据分析)
  3. 9.12DjangoORM回顾和路由.
  4. poi 导入导出excel
  5. js生成二维码以及点击下载二维码
  6. Linux下pip使用国内源
  7. HDU 1789 - Doing Homework again - [贪心+优先队列]
  8. CCCC L2-022. 重排链表
  9. Oracle管理监控之Oracle用户权限
  10. python面向对象高级:__slots__