QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1470|回复: 7

推荐:Linux全免费、新型可视化开发工具

[复制链接]
发表于 2004-12-19 11:15:45 | 显示全部楼层 |阅读模式
其实也不新啦!我说的是Qt Designer,噢,谁打我,还扔臭鸡蛋?

个人感觉,Qt Designer是目前Linux下最有意思的一个开发工具。
以前的Qt Designer只是一个窗口界面绘制工具而已,现在则可以当作Delphi或VB一样的东东来用了——当然,和VB/Delphi是另外一个概念,全新的编程体验。

用Qt Desinger 3.3.3开发程序的好处:
1、直观:这就不用多说了
2、方便:在Delphi/Kylix中对齐组件需要借用align属性、panel组件、splliter组件,而Qt Designer中只需框选和选择layout即可;
3、简洁:不像以前还需要用uic生成C++源代码然后moc然后再make,现在只需要用qmake生成Makefile再make就可以了。而ui文件远比cpp文件更便于交流。如果要按标准格式发布,用KDevelop导入QMAKE工程即可。


提示:以下步骤均以Magic Linux 1.2 RC1中的Qt 3.3.3中的Qt Designer为平台。

首先建立C++ Project;
接着设计窗体:
在File/New的对话框中选择Main Window或Dialog或Widget,然后在窗体上放置ToolBox中的组件,在Property Editor中修改组件的属性,用Layout菜单/工具栏提供的功能分组对齐组件或打散对齐,用Tab Order功能设置光标移动顺序。
设计效果可用preview菜单功能进行预览。

接着编写事件响应代码(slots):
在Signal Handles中选择signal并双击,即可自动添加函数框架到.ui.h文件中,在.ui.h中编写代码(有成员提示功能)。当然还是得参考Qt Doc来写,提示功能并不太成熟。

接着新建C++ Main File,选择刚才设计的主窗口,然后全部保存。

最后在控制台下进入工程目录,运行qmake(无需参数)生成Makefile,再运行make进行编译,如果ui.h文件中的代码没有错误的话就可以得到最后执行程序了。


以上步骤的具体技巧可以查阅Qt Doc中Qt Designer的帮助和示例。

心得:
*在ui.h中定义init()和destroy()函数进行初始化和结束处理;
*如果需要使用自定义函数或slot,应放在另外的文件中进行声明,然后包含到ui.h文件中,Qt Designer中New Function生成的slot声明是不支持类似QNetworkOperator这样的参数的。
*一旦生成Makefile后,一般是不需要再运行qmake的。
发表于 2004-12-19 12:07:02 | 显示全部楼层
我记得VB里一个特别好的特性是,能够在写代码时提示一个对象的成员函数~而且不会局限于用户自己写的类~而且按F2还可以查找到各种控件的成员函数和属性的说明~
回复

使用道具 举报

发表于 2004-12-19 12:38:01 | 显示全部楼层
在Qt Designer 和 KDevelop中,也支持 Code Completion, 不过好像KDevelop中支持更好一点(包括支持C所有函数,C++的基本类库,虽然有时还有问题).

VB是微软卖钱的东西, 帮助里经常还可以看到很好的例代码, 太容易上手了, 否则微软拿什么去挣钱啊。 开源软件在易用性上现在和商业软件查的还很远。

Blender不知道你们用过没有, 只有几兆大,但是功能太强了, 3D建模, 材质,贴图处理, 动画编辑等等, 真让人觉得几兆大的软件竟然如此强大,简直是不可思议的强大。 但是Blender的易用性,简直是差的一塌糊涂,所用的功能,在提示菜单中不能完全覆盖,一些重要的功能想直接用鼠标找到是不可能的。 它全部用热键, 我见过一个Blender 热键列表, 我要晕倒了, 对着这个表,要练多久才能熟练啊。 不过也许有人喜欢,越熟练的人越喜欢, 热键要比鼠标点来点去快的多, 而且, 热键按来按去, 呵呵, 是够吓人的, 这可能才有高手的感觉吧。
回复

使用道具 举报

发表于 2004-12-19 13:41:36 | 显示全部楼层
KDevelop支持Code Completion么,我的怎么不提示啊,是不是要做什么设置?
回复

使用道具 举报

发表于 2004-12-19 14:28:36 | 显示全部楼层
一般来讲, KDevelop 支持你自己写的class的方法的自动提示, 如果你要让KDeveop支持
C,和C++的标准库的提示,
到 Project -> Project Option -> C++ Specific -> Code Completion -> Add Persistant Class Store...
然后自己看着添加什么想要的提示(Code Completion)就可以了

但是,我在KDevelop的论坛里看到说是typedef的类型也可以认,但我的认不出来, 而且,有时候不能自动提示, 这时候要按快捷键强迫让它显示, 如果快捷键和你的输入法的(Ctrl+Space)相同,那么,你得改一下快捷键才行,
在 Setting -> Configure Shortcuts... 找到 C++ Specific 下的 Complete Text 改改就好了,我改成(Alt + Space), it just works perfectly
回复

使用道具 举报

发表于 2004-12-19 16:22:26 | 显示全部楼层
呵呵……我觉得blender的易用性并不低,只是人机交互的思路和其他软件不大一样而已……其实我很喜欢blender
回复

使用道具 举报

发表于 2004-12-19 16:51:42 | 显示全部楼层
[quote:9f0dfb32da="sjinny"]呵呵……我觉得blender的易用性并不低,只是人机交互的思路和其他软件不大一样而已……其实我很喜欢blender[/quote]
高手  
回复

使用道具 举报

 楼主| 发表于 2004-12-19 19:22:29 | 显示全部楼层
Qt Designer3.3.3中的代码完成功能主要是针对窗体界面上的组件来说的,可以提示出界面组件的成员函数和属性,但对父类好像不怎么支持。毕竟是新加的功能,和KDevelop还是有一定距离,不过这个不是问题,和Qt Doc结合起来用就可以了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-6 21:35 , Processed in 0.045906 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表