Demo QT untuk Buku "Panduan Pengembangan Qt5.9 C ++"
Beberapa demo kecil yang saya buat selama proses QT adalah Panduan Pengembangan QT5.9 C ++.
2-1_Helloworld
Halo dunia.

- Label
- Tombol tekan
- Sinyal & Slot
2-2_widgets
Editor Sederhana.

- Kotak centang
- Tombol radio
- Tata letak
- Teks Edit: Set Font Italic, Set Font Bold, Set Font Underline, Set Palette (Untuk Set TextEdit Font Color)
- Sinyal & Slot
- Qobject :: connect:
connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type = Qt::AutoConnection)
2-4_TextEditor
Editor Teks.

- Mode Desain: Kode+Visualisasi (kode+UI)
- Atur ikon
- Toorbar
- statusbar
- Sinyal & Slot
- Tindakan
- qdebug ()
- Progressbar
- Spinbox
- Teks Edit: Setel font, atur font italic, atur font bold, atur font underline, atur poin font, jelas ...
- Qdir
- QfileDialog
- QMessageBox
- QFILE + QIODEVICE & QFILE + QtextStream untuk membaca dan menulis file teks
4-3_spinbox_sample
Caculator Harga Sederhana.

- Spinbox (awalan, sufiks)
- Kotak grup
- LineEdit
-
QString::number(), QString.setNum() ...
4-4_QSlidersample
Mixer Warna Sederhana

- Slider
- Dial
- QColor:
QColor color; color.setRgb(r, g, b, a); - Qpalette:
QPalette p = ui->textEdit->palette();
p.setColor(QPalette::Base, color);
ui->textEdit->setPalette(p);
4-5_time
Penggunaan kelas waktu.

- QTime
QTime t;
t.start();
//do something
t.elapsed();//do something time in miliseconds.
- Qdatetime
QDateTime datetime = QDateTime::currentDateTime();
QString time_str = datetime.toString("yyyy-MM-dd hh:mm:ss"));
QDateTime datetime = QDateTime::fromString(time_str,"yyyy-MM-dd hh:mm:ss");
- Qtimer
QTimer* timer_1 = new QTimer(this);
timer_1->stop();
timer_1->setInterval(1000);
connect(timer_1, SIGNAL(timeout()), this, SLOT(on_timer_1_timeout()));
void on_on_timer_1_timeout()
{
//do something every timer interval
}
- Tanggal/Waktu Edit
4-7_itemwidget
Penggunaan widget berbasis item atau model-view.

- Kotak alat (wadah)
- Widget tab (wadah)
- QlistWidgetItem
- QListWidget (Berbasis Item)
- QtableWidgetItem
- QtableWidget (berbasis item), cara mengisi tabel dengan item
- QStandardItemModel
- QtableView (Model-View), SetModel
- QListWidget/qtableWidget: Tambahkan, masukkan, hapus (QtableWidget Reverse Traversal Remersal), Clear, SelectAll, SelectNone, SelectInvert, Autoresize
- Cara Klik Kanan Kustom: Cara Menyesuaikan Menu Klik Kanan
- Tombol Alat (Cara Mengikat Tindakan)
- Tombol Setstylesheet
- Baca CSV (STD IFStream, Getline () Split String)
- Wadah: QList, QStringList
- Qdir:
//get dir_path files.
QDir dir;
dir.setPath(path);
return dir.entryList(QDir::Files);
5-1_QFilesyStemModel
Penggunaan qFilesystemModel untuk menunjukkan sistem file.

- QFILESYSTEMMODEL: SetRrootpath, Index (Qstring Path) , size (), type (), FilePath
- Qtreeview/QtableView/QListView: SetModel, SetrootIndex
file_sys_model->setRootPath(path);
qDebug()<<"file_sys_model root path:"<<file_sys_model->rootPath();
ui->treeView->setRootIndex(file_sys_model->index(path));//设置treeView根节点为选定目录
ui->tableView->setRootIndex(file_sys_model->index(path));
ui->tableView->resizeColumnsToContents();
ui->tableView->resizeRowsToContents();
ui->listView->setRootIndex(file_sys_model->index(path));
- Qdesktopservices:
QDesktopServices::openUrl(QUrl(file_sys_model->filePath(index)));//listView item双击事件, 调用系统程序打开文件
5-2_QStringListModel
Penggunaan QStringListModel + QListView untuk menampilkan file CSV.

- QStringListModel: setStringList, inertrow (), setData (), removerow (), removerows (), indeks (baris int)
- QModelIndex: qmodelindex.row ()
- Ikat QStringListModel ke QListView menggunakan qlistView.setModel (), qlistView berubah dengan qstringlistModel,
- QListView: currentIndex (), setCurrentIndex ()
5-3_QStandardItemModel

- QStandardItemModel
- Bind QstandarditemModel ke QTableView
- QtextStream: Baca file CSV
- Kelas Populasi Negara
- Qdatastream:
- Ekspor TableView Data dan Baca Data ke TableView Menggunakan QT Stream, Override >> & << operator untuk membaca dan menulis data dari dan ke objek popopulasi country.
- Ekspor data tableView dan baca data ke tableView menggunakan format biner.
- Tambahkan/masukkan/hapus/ubah tabel, atur indeks pada fokus
6-1_dialog

- QfileDialog
- QMessageBox
- Qfontdialog
- Qcolordialog
- QinputDialog