V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
evilangel
V2EX  ›  Python

Mac下做GUI界面开发该选什么?

  •  
  •   evilangel · 2013-05-11 08:07:26 +08:00 · 10400 次点击
    这是一个创建于 4009 天前的主题,其中的信息可能已经有所发展或是发生改变。
    相信这里应该也有同学在Mac下做GUI界面开发的吧,不知道Mac下做GUI开发该选什么?
    有老手来给推荐一下吧!
    23 条回复    1970-01-01 08:00:00 +08:00
    alexrezit
        1
    alexrezit  
       2013-05-11 08:12:16 +08:00
    Cocoa.
    evilangel
        2
    evilangel  
    OP
       2013-05-11 08:22:23 +08:00
    @alexrezit 晕,我记得我帖子里是写了Mac下用Python做GUI界面开发该选什么的。怎么Python没了?还是我忘了? 抱歉 楼上的兄弟,cocoa我当然知道,但是我是想问Mac下python的GUI开发的。
    xhacker
        3
    xhacker  
       2013-05-11 08:43:48 +08:00 via iPad   ❤️ 1
    可以试试 PyObjC。
    whtsky
        4
    whtsky  
       2013-05-11 09:15:15 +08:00 via iPhone
    用 PyObjC 写 Cocoa 程序啊
    alexrezit
        5
    alexrezit  
       2013-05-11 09:16:02 +08:00
    @evilangel
    非原生的大多丑到没法看.
    gaolinjie
        6
    gaolinjie  
       2013-05-11 09:23:20 +08:00 via Android
    qt不错
    phuslu
        7
    phuslu  
       2013-05-11 09:24:06 +08:00 via iPhone
    可以参考goagent-osx.py,是hewig用pyobjc写的。
    evilangel
        8
    evilangel  
    OP
       2013-05-11 09:44:07 +08:00
    @xhacker
    @whtsky
    @phuslu 一开始确实是想用pyobic的但是网上查了下资料太少了,中文资料更是一个都没有,即使英文资料也都是很多年前的了。网上大都搜不到最近两年的资料,有现在正在使用pyobjc的兄弟吗?麻烦提供点资料参考。
    middleware
        9
    middleware  
       2013-05-11 10:37:14 +08:00
    Objective-C。如果你真的在乎跨平台,尽量把显示之外的逻辑用 C 写,把 custom control 的逻辑用 OpenGL 写。
    wang2191195
        10
    wang2191195  
       2013-05-11 11:58:05 +08:00 via iPhone
    试试wxmac?
    hewigovens
        11
    hewigovens  
       2013-05-11 12:06:52 +08:00
    可以试试kivy, http://kivy.org/ 最近小研究了下, 性能应该不是问题~
    evilangel
        12
    evilangel  
    OP
       2013-05-11 12:23:18 +08:00
    @wang2191195
    @hewigovens 这两个貌似比较小众吧,从来没听说过。。
    xdeng
        13
    xdeng  
       2013-05-11 12:49:17 +08:00 via iPhone
    qt不是可以么
    hewigovens
        14
    hewigovens  
       2013-05-11 13:11:40 +08:00
    @evilangel PyObjC可用性还是可以的, 比较典型的是Dropbox的Mac客户端. 文档的话基本 http://pythonhosted.org/pyobjc/ 就够了, 最好是对Cocoa熟一点, 因为很多API如果pyobjc的例子里没有的话, 基本上就是靠Cocoa的文档了.
    xhacker
        15
    xhacker  
       2013-05-11 13:19:31 +08:00 via iPad
    @middleware: 为什么要「把 custom control 的逻辑用 OpenGL 写」?
    evilangel
        16
    evilangel  
    OP
       2013-05-11 15:27:56 +08:00
    @gaolinjie
    @xdeng 嗯,是想用qt的,然后再问下大伙一般都用的什么。人多遇到问题也好交流嘛!
    evilangel
        17
    evilangel  
    OP
       2013-05-11 15:32:58 +08:00
    @hewigovens 嗯,谢谢你的链接资料,先收藏了,对大名鼎鼎的Dropbox肯定是知道的了,app里确实看的出是Python写的,关键是PyObjc的资料太少了。。国内更是没有,所以主要是想找一个用的人多的方便遇到问题又google不到的时候请教一下。
    middleware
        18
    middleware  
       2013-05-11 17:26:44 +08:00
    @xhacker 这样比用 Cocoa 写可移植性好。
    wang2191195
        19
    wang2191195  
       2013-05-11 17:31:48 +08:00 via iPhone
    @evilangel 呃 wxmac号称用的是native UI 而QT全是自己渲染?成那样的吧〜可以尝试一下 只是设计器这个东西很蛋疼 还有就是很想吐槽为什么每个C++界面库都要自己搞一套别的关联库
    davepkxxx
        20
    davepkxxx  
       2013-05-11 17:54:16 +08:00
    除非你用swing、qt、opengl之类的跨平台api写,否则我建议你直接用objc写。
    evilangel
        21
    evilangel  
    OP
       2013-05-11 18:21:44 +08:00
    好吧,我是不是不应该考虑跨平台呢。。。
    dingtianran
        22
    dingtianran  
       2013-05-11 21:33:08 +08:00
    这也是个会被拉去烧死的问题。。。。哈哈哈哈
    monkeycz
        23
    monkeycz  
       2013-05-11 23:13:27 +08:00
    在Mac上用PyQt做过实验性的项目,感觉还不错
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2324 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 125ms · UTC 12:47 · PVG 20:47 · LAX 05:47 · JFK 08:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.