wie gesagt bin ich gerade im Zuge der Umstellung auf Ubuntu statt Win****,
auf Python gestossen. Da ich beim lesen erfahren habe, dass Python,sowie Qt
plattformunabhängig sein sollen, ist die Begeisterung mit mir durchgegangen.
GROSSER Fehler....
Schon stosse ich an meine Grenzen(bin nicht mehr der jüngsten Einer

Mittels Qt-Designer habe ich mir eine FORM gemacht, mit drei Button.
Den EXIT auch zum EXIT zu bewegen, war nicht schwer, bei den anderen
bin ich am Ende.
Ich nutze z.Zt.:
Qt-Designer 4.6.2
Python 2.6.5
pyiuc4
Kubuntu 10.04 LTS
Mein Code, grossteils durch Designer und pyuic generiert:
Code: Alles auswählen
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'Wizza.ui'
#
# Created: Sat Jan 21 17:59:29 2012
# by: PyQt4 UI code generator 4.7.2
#
# WARNING! All changes made in this file will be lost!
from PyQt4 import QtCore, QtGui
import os
class Ui_WIZZARD(object):
def setupUi(self, WIZZARD):
WIZZARD.setObjectName("WIZZARD")
WIZZARD.resize(380, 100)
WIZZARD.setMinimumSize(QtCore.QSize(380, 100))
WIZZARD.setMaximumSize(QtCore.QSize(380, 100))
WIZZARD.setAutoFillBackground(False)
WIZZARD.setStyleSheet("None")
self.Button_li = QtGui.QPushButton(WIZZARD)
self.Button_li.setGeometry(QtCore.QRect(0, 0, 50, 50))
self.Button_li.setText("")
icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap("Bilder/Wizzard/Winkl-Li.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.Button_li.setIcon(icon)
self.Button_li.setIconSize(QtCore.QSize(24, 24))
self.Button_li.setObjectName("Button_li")
self.Button_re = QtGui.QPushButton(WIZZARD)
self.Button_re.setGeometry(QtCore.QRect(50, 0, 50, 50))
icon1 = QtGui.QIcon()
icon1.addPixmap(QtGui.QPixmap("Bilder/Wizzard/Winkl-Re.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off)
self.Button_re.setIcon(icon1)
self.Button_re.setIconSize(QtCore.QSize(24, 24))
self.Button_re.setObjectName("Button_re")
self.Button_RAUS = QtGui.QPushButton(WIZZARD)
self.Button_RAUS.setGeometry(QtCore.QRect(310, 60, 70, 40))
palette = QtGui.QPalette()
brush = QtGui.QBrush(QtGui.QColor(232, 8, 4))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.Button, brush)
brush = QtGui.QBrush(QtGui.QColor(255, 255, 0))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Active, QtGui.QPalette.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(232, 8, 4))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.Button, brush)
brush = QtGui.QBrush(QtGui.QColor(255, 255, 0))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Inactive, QtGui.QPalette.ButtonText, brush)
brush = QtGui.QBrush(QtGui.QColor(232, 8, 4))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.Button, brush)
brush = QtGui.QBrush(QtGui.QColor(151, 150, 149))
brush.setStyle(QtCore.Qt.SolidPattern)
palette.setBrush(QtGui.QPalette.Disabled, QtGui.QPalette.ButtonText, brush)
self.Button_RAUS.setPalette(palette)
font = QtGui.QFont()
font.setPointSize(11)
font.setWeight(75)
font.setBold(True)
self.Button_RAUS.setFont(font)
self.Button_RAUS.setObjectName("Button_RAUS")
self.retranslateUi(WIZZARD)
QtCore.QObject.connect(self.Button_RAUS, QtCore.SIGNAL("clicked()"), WIZZARD.close)
QtCore.QObject.connect(self.Button_li, QtCore.SIGNAL("pressed()"), WIZZARD.update)
QtCore.QObject.connect(self.Button_re, QtCore.SIGNAL("pressed()"), button_hot('wre'))
QtCore.QMetaObject.connectSlotsByName(WIZZARD)
def retranslateUi(self, WIZZARD):
WIZZARD.setWindowTitle(QtGui.QApplication.translate("WIZZARD", "Wizzard", None, QtGui.QApplication.UnicodeUTF8))
self.Button_RAUS.setText(QtGui.QApplication.translate("WIZZARD", "EXIT", None, QtGui.QApplication.UnicodeUTF8))
def button_hot(par):
os.sytem("xmacroplay :0.0 < ~/Bilder/"&par&".txt")
if __name__ == "__main__":
import sys
app = QtGui.QApplication(sys.argv)
WIZZARD = QtGui.QWidget()
ui = Ui_WIZZARD()
ui.setupUi(WIZZARD)
WIZZARD.show()
sys.exit(app.exec_())
-tux:~$ python Wizza.py
hat diese Ausgabe zu Folge:
Code: Alles auswählen
hat diese Ausgabe zu Folge:
Traceback (most recent call last):
File "w-Wizza.py", line 83, in <module>
ui.setupUi(WIZZARD)
File "w-Wizza.py", line 68, in setupUi
QtCore.QObject.connect(self.Button_re, QtCore.SIGNAL("pressed()"), button_hot('wre'))
File "w-Wizza.py", line 76, in button_hot
os.sytem("xmacroplay :0.0 < ~/Bilder/"&par&".txt")
AttributeError: 'module' object has no attribute 'sytem'
Will ich aber wo anders etwas auslösen, ist es zu Ende.
Also lasse ich die
QtCore.QObject.connect(self.Button_re, QtCore.SIGNAL("pressed()"), button_hot('wre'))
stattdessen als:
QtCore.QObject.connect(self.Button_re, QtCore.SIGNAL("pressed()"), WIZZARD.update)
laufen gibts keine Meldungen, wenn ich auch den Teil hier
Code: Alles auswählen
def button_hot(par):
os.sytem("xmacroplay :0.0 < ~/Bilder/"&par&".txt")
Allerdings habe ich dann ja auch nix funktionierendes...
Könnt Ihr mir bitte erklären wo ich meine Fehler mache ??
Schonmal vielen Dank vorab,
gruss
gu.lux