Używanie ui z jednej klasy w drugiej

0

Witam, mam pytanie czy jeżeli w klasie InfDevice mam element Ui (w Qt do zarządzania kontrolkami) to mogę też np. ustawić jakiś napis przycisku prosto z klasy cpuid ??

Tutaj kod do plików :
https://github.com/maniek1310/InfDevice

Potrzebuję w pliku cpuid.cpp użyć ui w funkcji view_info();

0

Zrobiłem tak

InfDevice::ui->pushButton->setText("fsdf");

Ale wyskakują takie błędy

cpuid.cpp:18: błąd: C2227: left of '->pushButton' must point to class/struct/union/generic type
cpuid.cpp:18: błąd: C2227: left of '->setText' must point to class/struct/union/generic type
0

Wie ktoś jak rozwiązać ten problem? bo męczę się z nim od wczoraj i dalej nie.mogę używać w klasie cpuinfo ui

1

musisz połączyć MainWindow z obiektem, który ma wywołać interację z ui;
służą do tego SIGNAL/SLOTy

http://qt-project.org/doc/qt-4.8/signalsandslots.html
http://qt-project.org/wiki/New_Signal_Slot_Syntax

0

ui nie jest statycznym składnikiem klasy, więc aby się do niego odwołać potrzebujesz jej instancji. Ponadto, tak jak @gośćabc pisze, użyj sygnałów i slotów.

0

Zrobiłem tak w pliku infdevice.cpp ale nie działa

connect(Ui_InfDevice, SIGNAL(ui), SLOT(cpuid::view_info())); 

Błędy :
infdevice.cpp:12: błąd: C2275: 'Ui_InfDevice' : illegal use of this type as an expression

1 użytkowników online, w tym zalogowanych: 0, gości: 1