Hirdetés
- Hogy milyen lett az ASUS ProArt széria csúcsnotesze? Hát ilyen!
- Ilyen egy komoly célszerszám
- Nosztalgikus húrokat pendít meg a Qwertykeys legújabb, szürreális ajánlata
- Az AMD X870 platform meghódítására tör a Sapphire alaplapos divíziója
- Ha a koreaiakon múlik, még évekig ingünk-gatyánk rámehet a memóriákra
- TCL LCD és LED TV-k
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- OLED TV topic
- MILC felhasználók szakmai topikja
- ZIDOO médialejátszók
- Vezetékes FEJhallgatók
- Ha a koreaiakon múlik, még évekig ingünk-gatyánk rámehet a memóriákra
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Philips LCD és LED TV-k
- ThinkPad (NEM IdeaPad)
Aktív témák
-
csavar
csendes tag
Na, kihagytam a Q_OBJECT makrót a workthread osztályból. Teljes kód (hátha valakinek jól jön. Persze ez csak "demo", nem törekedtem a teljességre. Ja, és QTCreatorral készítettem.)
****************
mainwindow.h
****************#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QtGui/QMainWindow>
#include "workthread.h"namespace Ui
{
class MainWindow;
}class MainWindow : public QMainWindow
{
Q_OBJECTpublic:
MainWindow(QWidget *parent = 0);~MainWindow();
private:
Ui::MainWindow *ui;
class workThread *wt;private slots:
void on_pushButton_clicked();
public slots:
void setProgressBarValue(int v);};
#endif // MAINWINDOW_H
*******************
mainwindow.cpp
*******************#include "mainwindow.h"
#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent), ui(new Ui::MainWindow)
{
ui->setupUi(this);
wt = new workThread();QObject::connect(wt, SIGNAL(setValue(int)), this,
SLOT(setProgressBarValue(int)));
}MainWindow::~MainWindow()
{
delete ui;
delete wt;
}void MainWindow:
n_pushButton_clicked()
{
wt->start();}
void MainWindow::setProgressBarValue(int v)
{ui->progressBar->setValue(v);
}
***************
workthread.h
***************#ifndef WORKTHREAD_H
#define WORKTHREAD_H#include <QThread>
class workThread : public QThread
{
Q_OBJECT
private:
bool exit;
int count;public:
workThread();
void run();
void stop();
signals:
void setValue(int v);
};#endif // WORKTHREAD_H
******************
workthread.cpp
******************#include "workthread.h"
workThread::workThread()
{
exit = false; count = 0;}
void workThread::run()
{
while(!exit)
{
msleep(50);
emit setValue(count);
if (count >= 100)count = 0;
else count++;
}
}void workThread::stop()
{
exit = true;
} -
csavar
csendes tag
Az is elég lenne ha valaki leírni hova kell slot-ot, signal-t és connectet tennem..
-
csavar
csendes tag
Sziasztok!
Alapvető problémám van a QT4 GUI programozással kapcsolatban. Most tanulom a qt4 programozást, Egyszerű programot szeretnék írni, ahol egy qthread-ból származó szál frissíti a GUI-t. Konkrétan egy progressbar-t értékét állítani a szál 100ms -ként.
Áttúrtam az sdk doksit, a google-t de csak olyan példákat találtam ahol egy nyomógombot kapcsoltak össze valamihez.
Nálam viszont egy háttérszálból gui elemet kellene frissíteni.Tud valaki egyszerű példát bemásolni (ahol csak a slotokat, signalokat, connecteket, fő elemeket tartalmaz) vagy jó tutorial linket? Mert nálam amit csináltam nem működik, hibával leáll a dolog futás közben
Valami ilyesmire gondolok:
class szal
{
void run();
}class gui
{
MainWindow *ui; // Ez tartalmazza a progress bar-t}
Hova kell slot-ot, signal-t connectet tenni?
(Pédát leegyszerűsíttem persze..)Előre is köszönöm!!!!
Aktív témák
- ÚJ Gamer PC - i5 12400f, RTX 5060 és 32gb RAM + GARANCIA
- Gamer PC - R7 3800X, RTX 3060ti és 16gb RAM + GARANCIA
- Xiaomi Watch S4 Silver 47mm 8hó garancia!
- Envy 17-da0830nd 17.3" FHD IPS érintő Ultra 7 155H 16GB 1TB NVMe IR kam gar
- XPS 15 9510 27% 15.6" FHD+ IPS i7-11800H RTX 3050Ti 32GB 512GB NVMe ujjlolv IR kam gar
- Új és újszerű 13-14 Gamer, ultrabook, üzleti, 2in1, X360, Touch készülékek kedvező áron Garanciával
- Gamer PC-Számítógép! Csere-Beszámítás! R7 2700X / GTX 1080Ti / 16GB DDR4 / 512 SSD!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RTX 5070Ti 16GB GAMER PC termékbeszámítással
- EREDETI NINTENDO Pokemon Go Plus autocatcher dobozban eladó
- IKEA Format lámpák eladóak (Egyben kedvezménnyel vihető!)
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: ATW Internet Kft.
Város: Budapest
n_pushButton_clicked()

