精华内容
下载资源
问答
  • eel+python 开发html5跨平台桌面应用1

    千次阅读 2019-03-25 17:09:51
    首先安装python,应该是python2.7版本以上都可以支持,我的环境是python3.7 运行环境 windows 10 并已经安装了 chrome 浏览器 代码: import eel eel.init(‘web’) web_app_options = { ‘mode’: “chrome-app”, ...

    eel 是非常轻量级的,依赖于本身安装的chrome或者chromium浏览器,所以比较灵活,不像其他cef python等内置浏览器。另外满足js和python交互的功能,所以开发一个桌面系统非常轻便、易学易用。

    首先安装python,应该是python2.7版本以上都可以支持,我的环境是python3.7
    安装 eel
    pip install eel

    运行环境 windows 10 并已经预先安装了 chrome 浏览器
    代码:

    import eel
    eel.init(‘web’)
    web_app_options = {
    ‘mode’: “chrome-app”, #or “chrome”
    ‘port’: 8080,
    ‘chromeFlags’: ["–kiosk"]
    }

    eel.start(‘main.html’, options=web_app_options)

    运行后将打开一个全屏窗口。
    注意:web目录下存放静态html页面
    –kiosk 是chrome的全屏参数。如果打开不是全屏,请关闭浏览器后再执行python 指令。我之前就是由于没有关闭浏览器,尝试了n次都设置全屏不成功。

    参考资料:
    html技术构建python桌面程序-利用eel
    https://www.mlln.cn/2018/11/09/html技术构建python桌面程序-利用eel/

    eel pypi
    https://pypi.org/project/Eel/

    在linux ubuntu 14.04 用python3.7 执行发现错误,用python3.4 执行一切正常

    展开全文
  • Flexx是否想了解有关Flexx(更改)的最新信息? 订阅新闻事件。 ...您可以使用Flexx创建(跨平台桌面应用程序,Web应用程序,并将应用程序导出到独立HTML文档中。 它也可以在Jupyter noteb中使用
  • 本文介绍用python+html开发桌面应用程序,主要是用pywebview来加载、显示html页面。 一.pywebview简介 pywebview是围绕webview组件的轻型跨平台包装器,它允许在其自己的本机GUI窗口中显示HTML内容。您可能会想到...

    本文介绍用python+html开发桌面应用程序,主要是用pywebview来加载、显示html页面。

    一.pywebview简介

    • pywebview是围绕webview组件的轻型跨平台包装器,它允许在其自己的本机GUI窗口中显示HTML内容。您可能会想到Python的Electron,但是pywebview打包的执行文件小很多。

    • 它为您提供了桌面应用程序中的Web技术功能,隐藏了GUI基于浏览器的事实。您可以将pywebview与轻量级的Web框架(例如Flask或Bottle)一起使用,也可以单独使用python和DOM之间的双向桥梁。

    • pywebview使用本机GUI创建Web组件窗口:Windows上的WinForms,macOS上的Cocoa和Linux上的QT或GTK。
      如果选择冻结应用程序,则pywebview不会捆绑重型的GUI工具箱或Web渲染器,从而使可执行文件的大小保持较小。

    • pywebview是BSD许可的开源项目。

    二.实例代码

    1. 安装pywebview
    python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ pywebview
    
    1. 引入pywebview
    import webview
    
    1. 前端html代码
      在html页面中与python交互时,需要在script中增加
    window.addEventListener('pywebviewready', function() {
            console.log('pywebview is ready');
        })
    

    再通过pywebview.api来调用python里面的函数

    pywebview.api.select_dir().then((response)=>{
    
            })
    

    select_dir()是在python中定义的函数。完整前端代码如下:

    <!DOCTYPE html>
    <html>
    <head lang="en">
    <meta charset="UTF-8">
    </head>
    <body>
    <input id="select_dir_id" disabled="disabled" style="width: 400px" placeholder="显示选择的目录">
    <button onClick="selectDir()">测试选择目录</button><br/>
    <input id="select_file_id" disabled="disabled" style="width: 400px" placeholder="显示选择的文件(*.bmp;*.jpg;*.gif;*.png)">
    <button onClick="selectFile()">测试选择文件</button><br/>
    <input id="input1_id" placeholder="参数1">
    <input id="input2_id" placeholder="参数2">
    <input id="input3_id" placeholder="参数3">
    <button onClick="testArgcs()">测试传入多参数,模拟耗时请求</button><br/>
    <div id="response-container"></div>
    <script>
        window.addEventListener('pywebviewready', function() {
            console.log('pywebview is ready');
        })
    
        function selectDir() {
            pywebview.api.select_dir().then((response)=>{
                //alert(response);
                document.getElementById('select_dir_id').value = response;
            })
        }
        
        function selectFile() {
            pywebview.api.select_file().then((response)=>{
                //alert(response);
                document.getElementById('select_file_id').value = response;
            })
        }
        function testArgcs() {
            var arg1 = document.getElementById('input1_id').value;
            var arg2 = document.getElementById('input2_id').value;
            var arg3 = document.getElementById('input3_id').value;
            pywebview.api.test_argcs(arg1, arg2, arg3).then((response)=>{
                alert(response);
            })
        }
    </script>
    </body>
    </html>
    
    1. python代码
      与html交互需要定义一个类,再实例化一个类对象传给pywebview,这样html就能调用类里面的函数。代码如下
    class Api:
        def select_dir(self):  # 选择目录
            result = window.create_file_dialog(webview.FOLDER_DIALOG)
            print(result)
            return result[0] if result else ''
    
        def select_file(self):  # 选择文件
            file_types = ('Image Files (*.bmp;*.jpg;*.gif;*.png)', 'All files (*.*)')
            result = window.create_file_dialog(webview.OPEN_DIALOG, allow_multiple=True, file_types=file_types)
            print(result)
            return result[0] if result else ''
    
        def test_argcs(self, arg1, arg2, arg3):  # 测试传入多参数,模拟耗时请求
            print(arg1, arg2, arg3)
            import time
            time.sleep(3)
    
            return '返回结果:{0},{1},{2}'.format(arg1, arg2, arg3)
    

    创建并启动窗口

    api = Api()
        window = webview.create_window('pywebview中html和python交互的例子', html=html, js_api=api)
        webview.start()
    

    下一章介绍python+html开发桌面应用程序(二)pywebview+vue实现系统登录

    展开全文
  • 在工作中常常需要写些桌面应用程序,一直都是用的MFC,但涉及到跨平台就有问题了,...暂定python桌面应用开发框架【注意版本要统一】: 1、boa-constructor-0.6.1.bin.setup.exe # 一个 wxWidges 的集成开发环境 2

        在工作中常常需要写些桌面应用程序,一直都是用的MFC,但涉及到跨平台就有问题了,目前迁移还存在一些问题:

    1)一些硬件还仅仅提供基于vs的api,像最近用的sony相机的wifi模块,这在调用上就麻烦了!


    暂定python桌面应用开发框架【注意版本要统一】:

    1、boa-constructor-0.6.1.bin.setup.exe  # 一个 wxWidges 的集成开发环境

    2、wxPython2.8-win32-unicode-2.8.10.1-py26.exe  # wxPython 库, 提供了用C++写 的 windows 组件库 wx

    3、py2exe-0.6.9.win32-py2.6.exe # 打包发布工具,将python 写的windows 程序或控 制台程序直接打包成 exe 可执行文件


    Python 应用发布技术:http://wiki.woodpecker.org.cn/moin/PyExe


    展开全文
  • 一个跨平台的网络媒体聚合应用,支持直播视频,高清电视和广播电台的在线观看或收听。 RealLive 简体中文 | 繁体中文 | English 一个跨平台的网络媒体聚合应用,支持直播视频,高清电视和广播电台的在线观看或收听...
  • 这个就不用多说了,python自带的GUI开发标准库,对于开发小型简单的应用来说,完全可以了,开源、跨平台,使用起来非常方便,下面我简单测试一下,主要代码如下: 点击运行程序,效果如下,一个窗口一个...

    Python进行GUI开发的库其实很多,下面我简单介绍几个不错的库,感兴趣的朋友可以自己尝试一下,实验环境win10+python3.6+pycharm5.0,主要内容如下:

    tkinter

    这个就不用多说了,python自带的GUI开发标准库,对于开发小型简单的应用来说,完全可以了,开源、跨平台,使用起来非常方便,下面我简单测试一下,主要代码如下:

    点击运行程序,效果如下,一个窗口一个Label标签:

    easygui

    这个是基于tkinter的一个窗口GUI库,可以快速创建窗口对话框,包括常见的登陆对话框、注册对话框等,下面我简单介绍一下这个库的安装和使用:

    1.首先,安装easygui,这个直接在cmd窗口输入安装命令“pip install easygui”就行,如下:

    2.安装完成后,我们就可以直接编写代码进行测试了,主要代码如下,非常简单:

    点击运行这个程序,效果如下:

    kivy

    这是一个跨平台的GUI应用程序开发库,可以用来开发安卓、苹果应用,一套程序,可以处处运行,下面我简单介绍一下这个库的安装和使用:

    1.首先,安装kivy,这个直接按官方教程安装就行,如下:

    2.安装完成后,就可以直接编写代码进行测试了,主要代码如下,非常简单:

    点击运行程序,效果如下,这里你可以将其打包为手机应用,安装到手机上:

    wxpython

    这也是一个免费、跨平台的Python GUI开发库,相比较前面的tkinter来说,功能更为强大,控件也更多,下面我简单介绍一下这个库的安装和使用:

    1.首先,安装wxpython,这个也直接在cmd窗口输入命令“pip install wxpython”就行,如下:

    2.安装完成后,我们就可以直接编写相关代码进行测试了,主要代码如下,非常简单,一个简单的文本编辑器:

    点击运行这个程序,效果如下:

    pyqt

    这个Qt的一个Python接口库,借助于Qt强大的用户界面,Python也可以快速开发出GUI程序,组件更多,也更方便,只要你有一定的Qt基础,很快就能掌握这个库的使用,下面我简单介绍一下这个库的安装和使用:

    1.首先,安装pyqt,这个直接在cmd窗口输入安装命令“pip install pyqt5”就行,如下,安装需要稍微等待一会儿:

    2.安装完成后,我们就可以直接编写代码进行测试了,如下,一个简单的计算器:

    点击运行这个程序,效果如下:

    至此,我们就介绍完了这5个Python GUI库。总的来说,这5个库使用起来都非常不错,如果你的应用界面比较简单,功能要求不高,可以选择tkinter和easygui,如果界面比较复杂,功能要求比较复杂,可以考虑使用wxpython或pyqt,当然,你也可以使用其他GUI库,像pygame等,根据实际项目需求而定,网上也有相关资料和教程,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言。

     

     

     

     

    展开全文
  • 通过统一的跨平台界面将UniqueBible.app的桌面版和移动版集成到单个应用程序中。 将两个版本合二为一 在这个混合项目中,我们正在重写一切,以将我们最好的两个应用程序集成到一个应用程序中。 让我们首先回顾一下...
  • 应用python开发app需求用到python的一个模块–kivy,kivy是一个开源的,跨平台Python开发框架,用于开发运用创新的使用顺序。简而言之,这是一个python桌面顺序开发框架(相似wxpython等模块),弱小的是kivy支持...
  • python开发app实战

    2021-03-25 10:09:27
     利用python开发app需要用到python的一个模块Kivy,kivy是一个开源的,跨平台Python开发框架,用于开发使用创新的应用程序。简而言之,这是一个python桌面程序开发框架(类似wxpython等模块),强大的是kivy支持...
  • 使用 Vagrant 打造跨平台开发环境 Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用,“代码在我机子上运行没有问题”这种说辞将成为历史。 我们可以...
  • python小工具: GUI开发工具 Flexx

    千次阅读 2019-02-21 22:28:44
    FlexX是跨平台的,因为它使用纯Python开发。它只需要运行python和浏览器。如果在桌面模式下运行,建议使用Firefox。 Flexx 使用模块化设计,包含一些子系统: ui - UI 部件 app - 事件循环和服务...
  • Python 也能开发 App ?

    2021-01-16 10:03:25
    利用python开发app需要用到python的一个模块–kivy,kivy是一个开源的,跨平台Python开发框架,用于开发使用创新的应用程序。简而言之,这是一个python桌面程序开发框架(类似wxpython等模块),强大的是kivy支持...
  • Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用,“代码在我机子上运行没有问题”这种说辞将成为历史。我们可以通过 Vagrant 封装一个 Linux 的开发环境,分发给...
  • 它为您提供了桌面应用程序中的Web技术功能,隐藏了GUI基于浏览器的事实。 您可以将pywebview与轻量级的Web框架(例如Flask或Bottle)一起使用,也可以单独使用python和DOM之间的双向桥梁。 pywebview使用本机GUI创建...

空空如也

空空如也

1 2 3 4 5 ... 10
收藏数 193
精华内容 77
关键字:

python跨平台桌面应用开发

python 订阅