不懂就问: Java & Python 开发 Linux GUI 程序

2019-09-19 15:50:35 +08:00
 Gatsbywl

需求:

开发一个 Linux 下 GUI 程序,要能按钮实现启动 Oracle,启动 ETL,查看 Oracle 的 status,关闭 Oracle。

背景:

不要跟我说命令多么简单或者 shell 开机自动启动脚本多么容易,这些我都知道。现在就是我们部门有一台自己的服务器,搭建的 APEX 报表,之前一直是我维护,关闭,重启之类的。现在我转调以后,就基本没人会了。有时候重启都很棘手。所以领导要求开发一个桌面应用,Linux 的 GUI 程序,要一个傻瓜式的操作,点击一个启动 Oracle按钮,就能自动启动之类的。

我的想法:

这个按钮直接对应一个 shell 脚本,点击就运行脚本之类的? 这个程序是放在 Linux 平台中的。我接触桌面应用开发很少,之前学过 PYQT,但是好像 pyqt 打包后太臃肿;所以来请教各位大佬们,这种情况下我该怎么实现这个需求?

语言:

Python or Java or C#( C#只是看过,如果框架确实很方便的话,我可以去学)

8100 次点击
所在节点    Linux
57 条回复
smdbh
2019-09-19 18:37:19 +08:00
whiptail ?
fengshils
2019-09-19 18:40:53 +08:00
直接 tkinter 岂不更好 写完打完可执行文件完事 关键是轻量 足够用就好
ipwx
2019-09-19 18:44:18 +08:00
只要一个按钮,为啥不学习一下 C++,直接用 Qt。反正又花不了多少时间,一个下午就搞定了。。

甚至你可以去搞个 Gtk 的 demo 改改就好了,C 语言就可以。
ipwx
2019-09-19 18:44:41 +08:00
对还有 22L 老哥说的,Python 直接 tkinter 不就行了。
reus
2019-09-19 19:20:38 +08:00
qt 哪里重了
reus
2019-09-19 19:21:16 +08:00
pyqt 重那就不要用 pyqt,直接 C++写,甚至直接给个 qml 文件用 qmlscene 跑
JamesMackerel
2019-09-19 19:50:55 +08:00
@arrow8899 似乎看见了一个命令注入 RCE 的现场。
yrand
2019-09-19 19:56:13 +08:00
打包又不用你把库打进去,做个 deb 自动装依赖不就行了。
axeojpwt
2019-09-19 19:59:36 +08:00
用 qt,就这功能的话现学现写一天可以搞完
jakezh
2019-09-19 21:13:02 +08:00
老哥们都再说啥呢。。用 python tkinter 写个界面 里面一个按钮对应一个 bash script 不就行了。。。。。。。。
unionx
2019-09-19 22:40:46 +08:00
写个简单的 web 界面其实挺好的,html/css/js 三件套基本都会嘛
wbing
2019-09-20 00:01:53 +08:00
同建议 qt,建个新项目拖动个按钮再跳转到槽,然后 system 函数调用你的脚本,几步就搞定,打包也简单。唯一花时间的可能就只是装开发环境了
Hellert
2019-09-20 00:15:15 +08:00
Lazarus(free pascal)
kingfalse
2019-09-20 00:22:09 +08:00
Java 分分钟搞定
HiCode
2019-09-20 00:24:29 +08:00
@Hellert +1,第一反应也是 lazarus
kingfalse
2019-09-20 00:24:32 +08:00
外包吗? 100 块明天交货
aaniao002
2019-09-20 02:56:58 +08:00
浏览器 html 写两个按钮,custom protocol 映射 xdg 映射脚本。貌似这样写的代码是最少的。
ClericPy
2019-09-20 06:44:27 +08:00
从实现简单的角度来看:
python 比较容易
1. 不在乎颜值但是强烈在乎实现复杂度的话 pysimplegui
2. 稍微在乎颜值 wxpython, 已经稳定支持 python3
3. 特别在乎颜值, 直接 web UI
4. 在乎颜值但是不喜欢启动 http server, pyqt

话说都用上 linux 了, 为什么不搞 command line ui, pip install fire 就搞定了
Gatsbywl
2019-09-20 08:46:58 +08:00
@alls
谢谢大家的意见!学到了很多新的东西,回头我会好好研究研究。
Chenamy2017
2019-09-20 08:57:07 +08:00
QT 了解下,50 块外包今天交货

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/602200

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX