• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

QT Creator - Przenoszenie wartości zmiennej do inego pliku .cpp

Object Storage Arubacloud
0 głosów
368 wizyt
pytanie zadane 12 lipca 2017 w C i C++ przez Artur Koniec Gaduła (3,680 p.)

Witam, próbuje zrobić grę, w której będzie można grać jedną z trzech postaci, nazwijmy je x,y,z, w formie przeznaczonej do wyboru postaci, za pomocą RadioButton'ów zrobiłem wybór, przy naciśnięciu pushButton'a kondycja warunkowa if podawała zmiennej int postac jaką postać wybraliśmy (x-1,y-2,z-3), w kolejnej formie już ma się dziać akcja, sterowanie postacią, wgrywanie tekstury postaci ma zależeć od cyferki w zmiennej postac, i tu jest problem, co muszę zrobić by int postac zadeklarowaną w Form1, odczytać w Form2? podaje tu kod, mam nadzieję że wytłumaczyłem problem zrozumiale. Dziękuję z góry za każdą pomoc, rozwiązanie dla "zielonego" mile widziane :) 

int postac = 0;
void Character::on_pushButton_ok_clicked()
{
if(ui->radioButton_x->isChecked())
 {

     postac = 1;
 }
 if(ui->radioButton_y->isChecked())
 {
     postac = 2;
 }
 if(ui->radioButton_z->isChecked())
 {

     postac = 3;
}

 

1 odpowiedź

0 głosów
odpowiedź 13 lipca 2017 przez Bondrusiek Maniak (61,410 p.)
wybrane 27 sierpnia 2017 przez Artur Koniec
 
Najlepsza

Witam,

nie wiem czy dobrze rozumuje ale spróbuj tak.

Utwórz zmienną prywatną postac. (Wyrzuć zmienną globalną int postac). Stwórz metodę int getPostac() const. Kod:

int Character::getPostac() const
{
      return postac;
}

Tworzysz nową klasę z formularzem(Form2) dodajesz klasę Character(np. #include "character.h"). Inicjujesz ją w nowej klasie Character character.

Następnie możesz się do niej odwołać w form2 np.

ui->label->setText("Postac " + QString::number(character.getPostac()));

Pozdrawiam

 

PS

Pisze się Qt Creator(https://www.qt.io/ide/) nie QT Creator. Tak samo nie QT tylko Qt

komentarz 13 lipca 2017 przez Artur Koniec Gaduła (3,680 p.)
błąd: no 'int Character::getPostac() const' member function declared in class 'Character'
 int Character::getPostac() const
                            ^                                 takie coś dostaje :/ co moze być źle?
komentarz 13 lipca 2017 przez Bondrusiek Maniak (61,410 p.)

Prawdopodobnie nie dodałeś funkcji do klasy. Plik .h

class Character
{
...
private:
int postac;
public:
int getPostac() const;
...
};

Plik .cpp

int Character::getPostac() const
{
      return postac;
}

 

Podobne pytania

0 głosów
1 odpowiedź 185 wizyt
pytanie zadane 17 kwietnia 2018 w C i C++ przez Jopinho Nowicjusz (120 p.)
0 głosów
2 odpowiedzi 507 wizyt
pytanie zadane 21 marca 2017 w C i C++ przez kosabdsm Początkujący (430 p.)
0 głosów
1 odpowiedź 259 wizyt
pytanie zadane 20 lipca 2019 w C i C++ przez Ewaryst Ławecki Obywatel (1,710 p.)

92,757 zapytań

141,679 odpowiedzi

320,437 komentarzy

62,101 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...