广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    教你怎么用python调用windows的API

    来源:网络收集  点击:  时间:2024-02-29
    【导读】:
    在windows上进行python开发时,尽管模块应有尽有,但是有时候我们还是会遇到需要调用windows API才能解决实际问题。下面小编就教大家一个实用的python技能——调用windows的API。工具/原料morepython方法/步骤1/6分步阅读

    调用windows API的方式其实有两种,第一种是通过第三方模块pywin32。

    如果小伙伴安装了pip,可以通过pip安装pywin32

    在命令行中运行pip list查看是否安装了pywin32

    如图

    没安装的小伙伴可以去安装,或者使用第二种方法(ctypes模块)。

    2/6

    我们这里调用一个windows最基本的API,MessageBox,该接口可以显示一个对话框。

    这里小编就不过多介绍了,只简单的描述MessageBox接口,MessageBox是windows的一个API接口,作用是显示一个对话框。

    原型为:

    intWINAPIMessageBox(HWNDhWnd,LPCTSTRlpText,LPCTSTRlpCaption,UINTuType);

    第一个参数hWnd,指明了该对话框属于哪个窗口,lpText为窗口提示信息,lpCaption则为窗口标题,uType则是定义对话框的按钮和图标。

    这里我们需要导入win32api这个模块(隶属于pywin32),如果需要宏定义的,API的宏被定义在win32con(同隶属于pywin32)模块内。

    这里我们只导入一个win32api模块,然后简单的调用MessageBox显示一个对话框即可。

    3/6

    如果我们需要两个按钮,是和否,然后我们需要对话框显示一个问号的图标

    如下:

    (代码发不出,抱歉各位,看图吧)

    4/6

    如果我们不会安装pywin32模块,或者说不想安装这个三方模块。这时我们还有一个办法。

    调用python内置模块ctypes,如果小伙伴有windows编程基础的话,或者看过一点MSDN的话,都该知道,Windows的API其实是以dll文件(动态链接库)方式存在的。

    + 和 | 效果是相同的

    (代码发不出,请看图)

    5/6

    为什么是MessageBoxW而不是MessageBox。

    可以看到,并没有MessageBox这个函数,只有一个MessageBoxA和MessageBoxW,区别在于,MessageBoxA是针对ASCII码进行对话框处理(小伙伴可以把它当做如果只针对英文,尽管不只如此,其实是根据区域环境而定,例如当前操作系统的编码为GBK,那么我们使用这个函数时,使用中文会乱码,而且只能打印出一个首位字符),而MessageBoxW则是针对Unicode编码进行对话框处理。

    6/6

    让我们再来看看,上面代码中的1和16是什么意思?

    其实就是MessageBox内的uType参数,即定义图标,按钮等风格。

    为什么是1和16?

    MessageBox函数内的这些宏定义我们可以看到,确定和取消按钮宏对应的数值为十六进制的1,而错误图标宏对应的数值为十六进制的10

    我们把十六进制的1转换成十进制为1,十六进制的10转换成十进制为16

    所以这就是为什么是1和16的原因了

    是否帮到了您?如果有帮到您,请点个关注、点个投票、点个分享、点个赞1/4

    怎么关注?

    在经验的右上角小编头像旁边点击关注,如图。

    2/4

    怎么点赞?

    请在经验左侧点赞,如图。

    3/4

    怎么投票?

    在经验的下方点击投票,如图。

    4/4

    如果觉得小编写的还不错,可以动动鼠标把它分享给您的朋友。

    如何分享,鼠标移动到右下角第一个按钮上,在弹出的选项中进行分享,如图。

    不尽感激。

    注意事项

    如有疑问,点击左下角的投票或者有得给小编留言,小编看到会第一时间回复您,谢谢

    如果喜欢本经验,请关注我。可以把它分享给您的朋友,请点个投票点个收藏。谢谢,您的支持是我最大的动力。

    PYTHONMESSAGEBOXMESSAGEBOXWWINDOWSAPIPYTHON
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_168709.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-06 21:53:40  耗时:0.022
    0.0219s