Mattepuffo's logo
Eseguire deploy di applicazioni Qt su Linux

Eseguire deploy di applicazioni Qt su Linux

Allora, mentre Windows e macOS hanno strumenti appositi per il deploy di applicazioni Qt, Linux no.

Ne ha uno non ufficiale, ma io riscontro sempre problemi.

Quindi sono arrivato ad una procedura che mi funziona; vi premetto che è un pò rozza, ma se funziona va bene così.

Mattepuffo's logo
Eseguire comandi in Qt con QProcess

Eseguire comandi in Qt con QProcess

QProcess è la classe per Qt preposta all'esecuzione di comandi esterni.

Oggi vediamo come usarla, e nello specifico:

  • eseguiremo un comando
  • cattureremo lo stanard input visualizzandolo su una QPlainTextEdit
  • cattureremo lo stanard error visualizzandolo su una QPlainTextEdit

Così facendo vedremo l'output del comando in tempo reale.

Mattepuffo's logo
Riempire una QList con oggetti custom

Riempire una QList con oggetti custom

Rispetto ad altri linguaggi, usare oggetti custom in Qt ha qualche complicazione in più.

Soprattutto per quanto riguarda "l'inizializzazione" dell'oggetto custom (potete vedere la discussione sul forum qt.io).

Oggi vediamo come riempire una QList usando un oggetto custom.

Il mio oggetto corrisponde ad una tabella di database; e da li che prenderò i dati.

Mattepuffo's logo
Inserire QPushButton in QTableWidget

Inserire QPushButton in QTableWidget

Sostanzialmente riempio una QTableWidget da database, e voglio mettere un QPushButton nelll'ultima colonna (il classico tasto per cancellazione).

Non andremo a vedere come reperisco i dati da db, ma diamo per scontato di avere una QList perfettamente riempita.

Nel nostro file di intestazione andiamo ad aggiungere questo:

private slots:
    void delSync(QTableWidgetItem *item);

private:
    void createMainLayout();

Mattepuffo's logo
Passare un QWidget ad uno SLOT in Qt

Passare un QWidget ad uno SLOT in Qt

Nella mia interfaccia create in Qt, ho due QLineEdit e due QPushButton.

Entrambi i bottoni avviano un QFileDialog per la scelta di una cartella; ma a seconda di quale bottone viene cliccato, devo riempire una QLineEdit piuttosto che l'altra.

Mattepuffo's logo
Riempire una QComboBox da QMap

Riempire una QComboBox da QMap

Oggi vediamo come riempire una QComboBox usando un oggetto QMap.

Vedremo anche come recuperare la chiave del valore selezionato (grazie al Qt forum per il suggerimento).

Vi posto tutta la classe, comprensive di intestazione:

#ifndef DIALOGADD_H
#define DIALOGADD_H

#include <QLineEdit>
#include <QFileDialog>
#include <QPushButton>

#include <QDebug>

namespace Ui {
class DialogAdd;
}

class DialogAdd : public QDialog {
    Q_OBJECT

public:
    explicit DialogAdd(QWidget *parent = nullptr);
    virtual ~DialogAdd();

private slots:
    void getSync();

private:
    QMap<QString, QString> syncMap;
    Ui::DialogAdd *ui;
};

#endif // DIALOGADD_H

Mattepuffo's logo
Usare QSplitter in Qt

Usare QSplitter in Qt

In pratica la mia finestra Qt deve essere divisa in due parti, di cui la sinistra grande il 20% della finestra; la destra il restante.

Mi hanno suggerito di usare il componente QSplitter, ed è quello che ho fatto.