Τα πάντα για PyQt

...του ubuntu και έργων ΕΛ/ΛΑΚ (Έργα-Οδηγοί-Προτάσεις)

Συντονιστής: konnn

Re: Τα πάντα για PyQt

Δημοσίευσηαπό Ilias95 » 05 Ιαν 2012, 23:48

Καλά να πάθεις. :lol: :P
Ακριβώς τα ίδια πακέτα έχουμε εγκατεστημένα. Έκδοση ubuntu;
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

Re: Τα πάντα για PyQt

Δημοσίευσηαπό medigeek » 06 Ιαν 2012, 00:16

11.10 :?
Το πρώτο (width) δέχεται μόνο κόμμα, το δεύτερο και κόμμα και τελεία.
Εννοείται ότι εμφανίζεται το σφάλμα που ανέφερα όταν δίνω κόμμα.
Τεσπα, με το regexp πιστεύω λύνεται το πρόβλημα
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Τα πάντα για PyQt

Δημοσίευσηαπό pmav99 » 06 Ιαν 2012, 13:42

Για το κόμμα έχετε δίκιο. Δεν το είχα προσέξει. Μόνο με τελεία που είναι και η υποδιαστολή είχα δοκιμάσει. Ίσως να έχει να κάνει κάτι με τα locales.
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: Τα πάντα για PyQt

Δημοσίευσηαπό clepto » 06 Ιαν 2012, 22:48

πείτε ότι έχω ένα κύριο παράθυρο και πατάω ένα κουμπί και εμφανίζεται και ένας διάλογος με QLineEdit, πως θα πάρω το περιεχόμενο του QLineEdit που θα βάλω ώστε να το χρησιμοποιήσω στο κύριο παράθυρο; α και ο διάλογος είναι σε διαφορετικό αρχείο .py που το περνάω με import
το περνάω σε μια μεταβλητή αλλά μετά δεν μπορώ να το χρησιμοποιήσω στο κύριο παράθυρο, μου λέει
Κώδικας: Επιλογή όλων
AttributeError: 'Vault' object has no attribute 'pass1'
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 13.04 raring 3.8.0-30-generic 64bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.8.0-19-generic, Windows 7
3 Intel Core i7-3537U CPU @ 2.00GHz ‖ RAM 3840 MiB ‖ ASUS K56CB
4 Intel 3rd Gen Core processor Graphics Controller [8086:0166] {i915}
5 wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01) ⋮ eth0: Realtek RTL8111/8168 PCI Express Gigabit Ethernet controller [10ec:8168] (rev 0a)
clepto
antiwinTUX
antiwinTUX
 
Δημοσιεύσεις: 4102
Εγγραφή: 07 Ιαν 2010, 16:27
Τοποθεσία: Πάτρα
Launchpad: christriant
IRC: Clepto
Εκτύπωση

Re: Τα πάντα για PyQt

Δημοσίευσηαπό Ilias95 » 06 Ιαν 2012, 22:55

clepto έγραψε:πείτε ότι έχω ένα κύριο παράθυρο και πατάω ένα κουμπί και εμφανίζεται και ένας διάλογος με QLineEdit, πως θα πάρω το περιεχόμενο του QLineEdit που θα βάλω ώστε να το χρησιμοποιήσω στο κύριο παράθυρο; α και ο διάλογος είναι σε διαφορετικό αρχείο .py που το περνάω με import
το περνάω σε μια μεταβλητή αλλά μετά δεν μπορώ να το χρησιμοποιήσω στο κύριο παράθυρο, μου λέει
Κώδικας: Επιλογή όλων
AttributeError: 'Vault' object has no attribute 'pass1'

Κώδικας: Επιλογή όλων
import my_dlg
dialog = my_dlg.my_dialog()
if dialog.exec_():
text = dialog.lineEdit.text()

Edit: Το παραπάνω είναι για modal dialogs και θα πάρει το κείμενο μόνο αν γίνει accept ο διάλογος. Αν θες να πάρεις το text σε οποιαδήποτε περίπτωση απλά αφαιρείς την συνθήκη:
Κώδικας: Επιλογή όλων
dialog.exec_()
text = dialog.lineEdit.text()
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

Re: Τα πάντα για PyQt

Δημοσίευσηαπό clepto » 07 Ιαν 2012, 00:41

Κώδικας: Επιλογή όλων
if dialog.exec_():
self.pass1 = self.createpasswdEdit.text()
self.pass2 = self.ccreatepasswdEdit.text()
tmp = tempfile.mkstemp()[1]
with open(tmp, 'w') as f:
f.write(self.pass1)

παίρνω
Κώδικας: Επιλογή όλων
File "./vault.py", line 153, in create_folder
f.write(self.pass1)
AttributeError: 'Vault' object has no attribute 'pass1'


και με
Κώδικας: Επιλογή όλων
dialog = createpasswd_dlg.createpasswd()
if dialog.exec_():
pass1 = self.createpasswdEdit.text()
pass2 = self.ccreatepasswdEdit.text()
tmp = tempfile.mkstemp()[1]
with open(tmp, 'w') as f:
f.write(pass1)

παιρνω
Κώδικας: Επιλογή όλων
Traceback (most recent call last):
File "./vault.py", line 148, in create_folder
f.write(pass1)
UnboundLocalError: local variable 'pass1' referenced before assignment
1 Γνώσεις Linux: Ικανοποιητικό ┃ Προγραμματισμού: Ικανοποιητικό ┃ Αγγλικών: Ικανοποιητικό
2 Ubuntu 13.04 raring 3.8.0-30-generic 64bit (en_US.UTF-8, Unity ubuntu), Ubuntu 3.8.0-19-generic, Windows 7
3 Intel Core i7-3537U CPU @ 2.00GHz ‖ RAM 3840 MiB ‖ ASUS K56CB
4 Intel 3rd Gen Core processor Graphics Controller [8086:0166] {i915}
5 wlan0: Atheros Inc. AR9485 Wireless Network Adapter [168c:0032] (rev 01) ⋮ eth0: Realtek RTL8111/8168 PCI Express Gigabit Ethernet controller [10ec:8168] (rev 0a)
clepto
antiwinTUX
antiwinTUX
 
Δημοσιεύσεις: 4102
Εγγραφή: 07 Ιαν 2010, 16:27
Τοποθεσία: Πάτρα
Launchpad: christriant
IRC: Clepto
Εκτύπωση

Re: Τα πάντα για PyQt

Δημοσίευσηαπό Ilias95 » 07 Ιαν 2012, 02:00

Ξαναγράψε τον κώδικα σωστά στοιχισμένο.
Μήπως το έχεις κάπως έτσι;
Κώδικας: Επιλογή όλων
if dialog.exec_():
self.pass1 = self.createpasswdEdit.text()
self.pass2 = self.ccreatepasswdEdit.text()
tmp = tempfile.mkstemp()[1]
with open(tmp, 'w') as f:
f.write(self.pass1)

Αν ναι τότε λογικά κάνεις reject τον διάλογο και γι' αυτό τα self.pass1 και self.pass2 δεν παίρνουν ποτέ τιμές.
Ότι υπάρχει μετά το if dialog.exec_() εκτελείτε μόνο αν αποδεχθείς τον διάλογο (δηλαδή αν κλείσει με self.accept()).
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

Re: Τα πάντα για PyQt

Δημοσίευσηαπό Ilias95 » 09 Φεβ 2012, 17:36

Θέλω να χρησιμοποιήσω ένα QStackedWidget.
Αν δημιουργήσω έναν διάλογο με QStackedWidget από τον QtDesigner το widget εμφανίζεται κανονικά:



Παρ' όλα αυτά αν πάω να χρησιμοποιήσω τον διάλογο μέσα από το πρόγραμμα και το τρέξω, παρατηρώ ότι το widget δεν εμφανίζεται σωστά:



Συγκεκριμένα πάνω δεξιά στο παράθυρο είναι φανερό ότι λείπει η επιλογή με τα βελάκια για να μεταβείς στην επόμενη "σελίδα" του widget.
Καμιά ιδέα; :problem:
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

Re: Τα πάντα για PyQt

Δημοσίευσηαπό pmav99 » 09 Φεβ 2012, 22:27

ανέβασε ένα παράδειγμα. Αν γράψεις κώδικα το κάνει και πάλι?
pmav99
seniorTUX
seniorTUX
 
Δημοσιεύσεις: 574
Εγγραφή: 05 Ιούλ 2008, 14:29
Εκτύπωση

Re: Τα πάντα για PyQt

Δημοσίευσηαπό Ilias95 » 09 Φεβ 2012, 22:56

pmav99 έγραψε:ανέβασε ένα παράδειγμα. Αν γράψεις κώδικα το κάνει και πάλι?

Ανέβασα μια tarball: http://dl.dropbox.com/u/33870708/qstackedwidget.tar.gz
Έγραψα και ένα μικρό sample μόνο με κώδικα και πάλι υπάρχει πρόβλημα.
Ilias95
saintTUX
saintTUX
 
Δημοσιεύσεις: 1548
Εγγραφή: 29 Απρ 2011, 23:26
Εκτύπωση

ΠροηγούμενηΕπόμενο

Επιστροφή στο Ανάπτυξη Λογισμικού / Αλγόριθμοι