learnxinyminutes-docs/it/pyqt.md

82 lines
2.7 KiB
Markdown
Raw Normal View History

---
2018-11-17 18:25:42 +00:00
filename: learnpyqt-it.py
contributors:
- ["Nathan Hughes", "https://github.com/sirsharpest"]
translators:
- ["Ale46", "https://github.com/ale46"]
---
**Qt** è un framework ampiamente conosciuto per lo sviluppo di software multipiattaforma che può essere eseguito su varie piattaforme software e hardware con modifiche minime o nulle nel codice, pur avendo la potenza e la velocità delle applicazioni native. Sebbene **Qt** sia stato originariamente scritto in *C++*.
2024-06-03 19:31:20 +00:00
Questo è un adattamento sull'introduzione di C ++ a QT di
[Aleksey Kholovchuk](https://github.com/vortexxx192), alcuni
degli esempi di codice dovrebbero avere la stessa
funzionalità che avrebbero se fossero fatte usando pyqt!
```python
import sys
from PyQt4 import QtGui
def window():
2024-06-03 19:31:20 +00:00
# Crea un oggetto applicazione
app = QtGui.QApplication(sys.argv)
2024-06-03 19:31:20 +00:00
# Crea un widget in cui verrà inserita la nostra etichetta
w = QtGui.QWidget()
2024-06-03 19:31:20 +00:00
# Aggiungi un'etichetta al widget
b = QtGui.QLabel(w)
2024-06-03 19:31:20 +00:00
# Imposta del testo per l'etichetta
b.setText("Ciao Mondo!")
2024-06-03 19:31:20 +00:00
# Fornisce informazioni su dimensioni e posizionamento
w.setGeometry(100, 100, 200, 50)
b.move(50, 20)
2024-06-03 19:31:20 +00:00
# Dai alla nostra finestra un bel titolo
w.setWindowTitle("PyQt")
2024-06-03 19:31:20 +00:00
# Visualizza tutto
w.show()
2024-06-03 19:31:20 +00:00
# Esegui ciò che abbiamo chiesto, una volta che tutto è stato configurato
sys.exit(app.exec_())
if __name__ == '__main__':
window()
```
Per ottenere alcune delle funzionalità più avanzate in **pyqt**, dobbiamo iniziare a cercare di creare elementi aggiuntivi.
Qui mostriamo come creare una finestra popup di dialogo, utile per chiedere all'utente di confermare una decisione o fornire informazioni
```python
import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *
def window():
app = QApplication(sys.argv)
w = QWidget()
# Crea un pulsante e allegalo al widget w
b = QPushButton(w)
b.setText("Premimi")
b.move(50, 50)
# Indica a b di chiamare questa funzione quando si fa clic
2024-06-03 19:31:20 +00:00
# notare la mancanza di "()" sulla chiamata di funzione
b.clicked.connect(showdialog)
w.setWindowTitle("PyQt Dialog")
w.show()
sys.exit(app.exec_())
# Questa funzione dovrebbe creare una finestra di dialogo con un pulsante
# che aspetta di essere cliccato e quindi esce dal programma
def showdialog():
d = QDialog()
b1 = QPushButton("ok", d)
b1.move(50, 50)
d.setWindowTitle("Dialog")
# Questa modalità dice al popup di bloccare il genitore, mentre è attivo
d.setWindowModality(Qt.ApplicationModal)
# Al click vorrei che l'intero processo finisse
b1.clicked.connect(sys.exit)
d.exec_()
if __name__ == '__main__':
window()
```