V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
yfang
V2EX  ›  问与答

想写个托盘区的简单桌面应用,选型什么工具比较合适? [跨平台]

  •  
  •   yfang · 2023-01-18 14:34:09 +08:00 · 1044 次点击
    这是一个创建于 670 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如题,
    有个想法实现一个桌面应用
    1. 平时在托盘区
    2. 点击的话会出现窗口
    3. 与蓝牙或者串口做一些信息交互
    4. 跨 Windows 与 Mac ( Linux 可选)
    5. 上架 MS 和苹果的市场
    可以视作一个简单的监控提醒工具

    目前做过的一些调查(浏览了这里的帖子的内容):
    1 ) electron ,巨大的体积和运行内存,作为一个简单的工具来说太令人匪夷所思了,一天 electron 不进系统运行时,一天都不想选它
    2 )使用操作系统 webview 类,有听闻 rust 的 tauri ,go 那边的也有,但不清楚发展的怎么样了,毕竟目前并不会 go 和 rust
    3 ) QT ,这要碰 CPP 了,以前浅浅看过,现在 QWidget 有界面描述语言了吗,还听说对开源愈发不友好了
    4 ) QML ,也浅浅看过,有些类似 JS 和 CSS ,但似乎非常少有人讨论,不清楚经验能有多少用到 JS 和 CSS 那边
    5 ) GTK ,这东西目前好像没有托盘支持,而且跨平台也不是它首要目标了,最后是用 C 写的
    6 ) Flutter ,看说法桌面是按网页行为做的,而且需要多学一门语言
    7 )各平台原生 GUI 各自实现,或各平台原生 GUI + 跨平台核心库实现

    目前的编程背景:
    C 比较熟练,CPP 语言本身概念有所了解,Python 用过下

    有跨平台开发经验的 V 友请不吝赐教,讲一讲心得,THX
    8 条回复    2023-01-19 15:34:39 +08:00
    lzj724
        1
    lzj724  
       2023-01-18 14:44:26 +08:00
    flutter 目前还不成熟,对大小没有要求其实 electron 就够了,否则就 qt 或者 maui
    LLaMA2
        2
    LLaMA2  
       2023-01-18 15:51:49 +08:00
    方案 7 或者 delphi 或者 fpc lazarus
    我推荐 fpc lazarus ,2 小时搞完
    liuran
        3
    liuran  
       2023-01-18 16:31:02 +08:00 via Android
    对程序要求低的话 pyqt (就是 qt 的 python 版)也是一个选择。
    xieren58
        4
    xieren58  
       2023-01-18 16:58:32 +08:00
    c# + avaloniaui
    shakoon
        5
    shakoon  
       2023-01-18 17:04:01 +08:00
    既然是小工具,架构应该不复杂,分别写可能反而是最优化的方式
    beisilu
        6
    beisilu  
       2023-01-19 09:11:30 +08:00
    2023 又是 flutter 不成熟的一年
    dobelee
        7
    dobelee  
       2023-01-19 10:30:02 +08:00 via iPhone
    这玩意分两个项目好一点吧,win 就直接 C#,不折腾。
    zxCoder
        8
    zxCoder  
       2023-01-19 15:34:39 +08:00
    c#
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5894 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 02:48 · PVG 10:48 · LAX 18:48 · JFK 21:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.