begin process at 2012 05 25 06:21:02
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Python

 > 

Divers

 > 

Débutant(e)

 > 

Question sur PyQt4 !!!!!!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Question sur PyQt4 !!!!!!

mardi 3 mars 2009 à 17:59:27 | Question sur PyQt4 !!!!!!

Subversion

Bonjour à vous tous,

Voilà, je dois programmer en Python via Eclipse (avec PyDev) afin d'élaborer une interface graphique. De ce fait, je suis en train d'utiliser PyQt4. Pour le moment, je souhaite que l'utilisateur saisisse l'adresse d'un serveur, son login et son mot de passe. Ainsi, je voudrais que lorsqu'il clique sur le bouton "Suivant", les informations qu'il a entrées soient copiées.

Ainsi, voici la programmation que j'ai :

#!/usr/bin/python
#-*- coding: utf8 -*-
#include <QApplication>

# -*- coding: utf-8 -*-
# WARNING! All changes made in this file will be lost!

from PyQt4 import QtCore, QtGui

class Ui_Dialog(object):
    def setupUi(self, Dialog):
        Dialog.setObjectName("Dialog")
        Dialog.resize(613, 579)
        self.commandLinkButton = QtGui.QCommandLinkButton(Dialog)
        self.commandLinkButton.setGeometry(QtCore.QRect(480, 470, 91, 41))
        self.commandLinkButton.setObjectName("commandLinkButton")
        self.label = QtGui.QLabel(Dialog)
        self.label.setGeometry(QtCore.QRect(80, 70, 391, 31))
        font = QtGui.QFont()
        font.setFamily("Times New Roman")
        font.setPointSize(22)
        font.setWeight(75)
        font.setBold(True)
        self.label.setFont(font)
        self.label.setObjectName("label")
        self.gridLayoutWidget_2 = QtGui.QWidget(Dialog)
        self.gridLayoutWidget_2.setGeometry(QtCore.QRect(140, 350, 261, 80))
        self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2")
        self.gridLayout_2 = QtGui.QGridLayout(self.gridLayoutWidget_2)
        self.gridLayout_2.setObjectName("gridLayout_2")
        self.label_3 = QtGui.QLabel(self.gridLayoutWidget_2)
        font = QtGui.QFont()
        font.setFamily("Times New Roman")
        font.setPointSize(12)
        font.setWeight(75)
        font.setBold(True)
        self.label_3.setFont(font)
        self.label_3.setObjectName("label_3")
        self.gridLayout_2.addWidget(self.label_3, 0, 2, 1, 1)
        self.label_4 = QtGui.QLabel(self.gridLayoutWidget_2)
        font = QtGui.QFont()
        font.setFamily("Times New Roman")
        font.setPointSize(12)
        font.setWeight(75)
        font.setBold(True)
        self.label_4.setFont(font)
        self.label_4.setObjectName("label_4")
        self.gridLayout_2.addWidget(self.label_4, 2, 2, 1, 1)
        spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.gridLayout_2.addItem(spacerItem, 0, 1, 1, 1)
        spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        self.gridLayout_2.addItem(spacerItem1, 2, 1, 1, 1)
        self.lineEdit_4 = QtGui.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_4.setEchoMode(QtGui.QLineEdit.Password)
        self.lineEdit_4.setObjectName("lineEdit_4")
        self.gridLayout_2.addWidget(self.lineEdit_4, 2, 0, 1, 1)
        self.lineEdit_3 = QtGui.QLineEdit(self.gridLayoutWidget_2)
        self.lineEdit_3.setMaximumSize(QtCore.QSize(124, 20))
        self.lineEdit_3.setEchoMode(QtGui.QLineEdit.Normal)
        self.lineEdit_3.setObjectName("lineEdit_3")
        self.gridLayout_2.addWidget(self.lineEdit_3, 0, 0, 1, 1)
        self.label_2 = QtGui.QLabel(Dialog)
        self.label_2.setGeometry(QtCore.QRect(100, 270, 361, 51))
        font = QtGui.QFont()
        font.setFamily("Times New Roman")
        font.setPointSize(16)
        font.setWeight(75)
        font.setBold(True)
        self.label_2.setFont(font)
        self.label_2.setObjectName("label_2")
        self.gridLayoutWidget = QtGui.QWidget(Dialog)
        self.gridLayoutWidget.setGeometry(QtCore.QRect(100, 150, 351, 88))
        self.gridLayoutWidget.setObjectName("gridLayoutWidget")
        self.gridLayout = QtGui.QGridLayout(self.gridLayoutWidget)
        self.gridLayout.setObjectName("gridLayout")
        self.lineEdit = QtGui.QLineEdit(self.gridLayoutWidget)
        font = QtGui.QFont()
        font.setFamily("Times New Roman")
        font.setPointSize(12)
        self.lineEdit.setFont(font)
        self.lineEdit.setObjectName("lineEdit")
        self.gridLayout.addWidget(self.lineEdit, 0, 1, 1, 1)
        self.label_5 = QtGui.QLabel(self.gridLayoutWidget)
        font = QtGui.QFont()
        font.setFamily("Times New Roman")
        font.setPointSize(12)
        font.setWeight(75)
        font.setBold(True)
        self.label_5.setFont(font)
        self.label_5.setObjectName("label_5")
        self.gridLayout.addWidget(self.label_5, 0, 0, 1, 1)

        self.retranslateUi(Dialog)
        QtCore.QObject.connect(self.commandLinkButton, QtCore.SIGNAL("clicked()"), self.lineEdit.copy)
        QtCore.QObject.connect(self.commandLinkButton, QtCore.SIGNAL("clicked()"), self.lineEdit_4.copy)
        QtCore.QObject.connect(self.commandLinkButton, QtCore.SIGNAL("clicked()"), self.lineEdit_3.copy)
        QtCore.QMetaObject.connectSlotsByName(Dialog)

    def retranslateUi(self, Dialog):
        Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog", "Dialog", None, QtGui.QApplication.UnicodeUTF8))
        self.commandLinkButton.setText(QtGui.QApplication.translate("Dialog", "Suivant", None, QtGui.QApplication.UnicodeUTF8))
        self.label.setText(QtGui.QApplication.translate("Dialog", "CONNEXION SERVEUR", None, QtGui.QApplication.UnicodeUTF8))
        self.label_3.setText(QtGui.QApplication.translate("Dialog", "Login", None, QtGui.QApplication.UnicodeUTF8))
        self.label_4.setText(QtGui.QApplication.translate("Dialog", "Mot de passe", None, QtGui.QApplication.UnicodeUTF8))
        self.label_2.setText(QtGui.QApplication.translate("Dialog", "Entrez votre login et votre mot de passe", None, QtGui.QApplication.UnicodeUTF8))
        self.lineEdit.setText(QtGui.QApplication.translate("Dialog", "http://", None, QtGui.QApplication.UnicodeUTF8))
        self.label_5.setText(QtGui.QApplication.translate("Dialog", "Adresse Subversion :", None, QtGui.QApplication.UnicodeUTF8))


if __name__ == "__main__":
    import sys
    app = QtGui.QApplication(sys.argv)
    Dialog = QtGui.QDialog()
    ui = Ui_Dialog()
    ui.setupUi(Dialog)
    Dialog.show()
    sys.exit(app.exec_())


Comme vous pouvez le voir, lorsque l'utilisateur clique sur le bouton "suivant" (qui est un "commandLinkButton"), il copie les différents champs (self.lineEdit.copy, self.lineEdit_4.copy, self.lineEdit_3.copy). Malheureusement, après, je ne vois pas comment il serait possible de récupérer ces informations. Sinon, je pensais qu'il fallait plutôt créer via "QtDesigner" des nouveaux slots comme par exemple : copylogin(), copyadress(), copypassword() (qui prendraient ainsi la place de "copy()"). De cette manière, je n'aurais plus qu'à définir ces fonctions à l'intérieur de la classe Ui_Dialog... En réalité, j'ai cherché pas mal d'exemples mais ils fonctionnaient pour la plupart avec des fichiers en C++ (avec le main.cpp, le ou les header files, etc) alors que moi, je dois faire ma programmation que sur Python...

Bref, en résumé, je voudrais savoir comment est-il possible de parvenir à ce que je souhaite ?

Je vous remercie d'avance pour vos suggestions.



Cette discussion est classée dans : label, font, self, dialog, qtgui


Répondre à ce message

Sujets en rapport avec ce message

PyQt4 et vidéo [ par drophi ] Bonjour, j'ai un petit problème d'affichage d'image avec PyQt. Je souhaiterais afficher une image dans un TabWidget et la modifier périodiquement. Cet toutes les lignes+colonnes d'un QTreeWidget [ par WieWeet ] bonjour, mes recherches ( google et autres ) n'ayant rien donné, [code=py] import sys from PyQt4 import QtGui from PyQt4.QtGui import QTreeWidget clas Porbleme affichage d'image avec pyqt [ par TYKO86 ] bonjour à tous, je suis débutant avec pyQt et je voudrais créer une classe qui me permet d'afficher des images mais mon soucis est je n'y arrive pas a Fenetre + menu + bouton pour un débutant [ par Yachas ] Bonjour, Je débute entièrement dans Python et tente de créer une simple application avec « wxPython » Je suis désolé de vous déranger pour des choses demande d'aide [ par souchi6 ] Bonjour, je vous remercie d'ava,ce pour votre aide. Mon problème est le suivant : je suis étudiant et je suis sensé programmer en python la chute d'un WXPython, probleme avec un notebook [ par faucheuse ] Par défaut Probleme sizer dans un panel dans un notebook Bonjour à tous, J'ai créer un notebook dans lequel je met plusieurs panel ainsi que un ou pl Variation Label grâce à une fonction appellé par Button [ par philux21 ] bonjour, je souhaite faire varier une valeur affichée dans un label. Je m'y prends ainsi : http://pastebin.com/8qnFG01J je ne comprends pas mon erre taquin 4*4 probleme affichage tkinter [ par fredericfabry ] Bonjour je me suis lance dans la resolution du probleme du taquin (puzzle) de4*4 mon programme donne le resultat mais je ne suis pas content car j'ai Espace dans un label Tkinter [ par dahrprog ] Bonjour tout le monde , je voudrais afficher des données de ma base de données sur une interface Tkinter via une Label , ça marche bien , j'ai mis : Bug graphique [ par ples ] Bonjour, Je travail sous opensuse-11.4. Pour intégrer le module nidaqmxbase dans Python, je dois recompiler Python-2.7.2, ça ne fonctionne pas autrem


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,577 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales