Eric 是一个和不错Python IDE开发工具,本身就是用Python + PyQT来实现。 再配合Qt Designer 很方便出开发出漂亮的QT程序。
在Fedora8/9/10下(更早的版本就没有时间测试了),使用 yum install eric 就可以安装上。但是在Fedora下, Eric 有个Bug,如果你想在Eric下打开Qt4 Designer, 但它打开的确实是Qt3的!很不爽.........
实际上是名字问题,下面的Patch修复了这个问题:
===============
--- /opt/downloads/Python/eric4-4.2.3/eric/Preferences/ProgramsDialog.py 2008-08-09 15:44:15.000000000 +0800
+++ Preferences/ProgramsDialog.py 2008-12-10 22:20:04.000000000 +0800
@@ -111,23 +111,23 @@ class ProgramsDialog(QDialog, Ui_Program
# 1e. Translation Converter
exe = sys.platform == "win32" and /
"%s.exe" % Utilities.generateQtToolName("lrelease") or /
- Utilities.generateQtToolName("lrelease")
+ Utilities.generateQtToolName("lrelease-qt4")
version = self.__createProgramEntry(self.trUtf8("Translation Converter (Qt4)"),
exe, '-version', 'lrelease', -1)
# 1f. Qt4 Designer
exe = sys.platform == "win32" and /
"%s.exe" % Utilities.generateQtToolName("designer") or /
- Utilities.generateQtToolName("designer")
+ Utilities.generateQtToolName("designer-qt4")
self.__createProgramEntry(self.trUtf8("Qt4 Designer"), exe, version = version)
# 1g. Qt4 Linguist
exe = sys.platform == "win32" and /
"%s.exe" % Utilities.generateQtToolName("linguist") or /
- Utilities.generateQtToolName("linguist")
+ Utilities.generateQtToolName("linguist-qt4")
self.__createProgramEntry(self.trUtf8("Qt4 Linguist"), exe, version = version)
# 1h. Qt4 Assistant
exe = sys.platform == "win32" and /
"%s.exe" % Utilities.generateQtToolName("assistant") or /
- Utilities.generateQtToolName("assistant")
+ Utilities.generateQtToolName("assistant-qt4")
self.__createProgramEntry(self.trUtf8("Qt4 Assistant"), exe, version = version)
# 2. do the PyQt programs
--- /opt/downloads/Python/eric4-4.2.3/eric/UI/UserInterface.py 2008-10-16 02:22:47.000000000 +0800
+++ UI/UserInterface.py 2008-12-10 22:29:26.000000000 +0800
@@ -1366,7 +1366,7 @@ class UserInterface(KQMainWindow):
# check for Qt4 designer and linguist
designerExe = sys.platform == 'win32' and /
"%s.exe" % Utilities.generateQtToolName("designer") or /
- Utilities.generateQtToolName("designer")
+ Utilities.generateQtToolName("designer-qt4")
if Utilities.isinpath(designerExe):
self.designer4Act = E4Action(self.trUtf8('Qt-Designer 4'),
UI.PixmapCache.getIcon("designer4.png"),
@@ -3069,7 +3069,7 @@ class UserInterface(KQMainWindow):
Utilities.generateQtToolName("designer", True))
else:
if uiLine.split('"')[1].startswith("4."):
- designer = Utilities.generateQtToolName("designer")
+ designer = Utilities.generateQtToolName("designer-qt4")
else:
designer = os.path.join(self.qtdir, 'bin',
Utilities.generateQtToolName("designer", True))
@@ -3078,7 +3078,7 @@ class UserInterface(KQMainWindow):
if not designer:
# determine from requested version
if version == 4:
- designer = Utilities.generateQtToolName("designer")
+ designer = Utilities.generateQtToolName("designer-qt4")
else:
designer = os.path.join(self.qtdir, 'bin',
Utilities.generateQtToolName("designer", True))
@@ -3129,7 +3129,7 @@ class UserInterface(KQMainWindow):
proc = QProcess()
if version == 4:
- linguist = Utilities.generateQtToolName("linguist")
+ linguist = Utilities.generateQtToolName("linguist-qt4")
else:
linguist = os.path.join(self.qtdir, 'bin',
Utilities.generateQtToolName("linguist", True))