QT wskażnik na grupowanie .

QT wskażnik na grupowanie .
TH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 27
0

Witam wszystkich jestem tu nowy ale borykam się z pewnym problemem który wprawia mnie w konfuzję niczym Kmicic pod koniec Iszego tomu "Potopu "
Zacznę od Kodu

okno.hpp

Kopiuj

#ifndef okno_HPP
#define okno_HPP

#include <QtGui>
#include <QApplication>


using namespace std;




class oknogl : public QMainWindow
{
public:
    oknogl();
    QHBoxLayout * wiersz ;
extern QHBoxLayout  ** wwiersz ;


private:

    QPushButton * przycisk;
    QLabel * etykieta;
    QSlider * stan ;
    QPushButton * start ;
    QPushButton * otzam ;

};

#endif // oknogl_HPP

oknogl.cpp

Kopiuj

#include "okno.hpp"
#include "QtGui"


oknogl::oknogl()
{
    setGeometry( 100, 100, 500, 400 );
    setWindowTitle( "Odtwarzacz" );
    przycisk = new QPushButton( "Wyjście", this );


    start = new QPushButton("Odtwarzaj", this) ;


    etykieta = new QLabel("Otwórz"  , this );

   // wskaźnik stanu utworu
    stan = new QSlider(Qt::Horizontal , this );

//Porządkowanie Tałatajstwa

    wiersz = new QHBoxLayout ;
    wiersz ->addWidget(start);
    wiersz ->addWidget(otzam);
    wiersz->addWidget(stan);
    wiersz->addWidget(przycisk);

      wwiersz = &wiersz ;
}

main.cpp

Kopiuj

#include <QtGui>
#include <iostream>
#include "okno.hpp"

 QHBoxLayout  * wwiersz ;
int main( int argc, char * argv[] )
{
    QApplication program( argc, argv );
    QTextCodec::setCodecForCStrings( QTextCodec::codecForName( "UTF-8" ) );


    oknogl okno;
    okno.setLayout(  wwiersz );
    okno.show();


    return program.exec();
}

Cóż może wygląda na problem początkującego ale uznałem że dodatkowe biblioteki wykraczają za podstawę mianowicie : chcę przekazać funkcji okno.setLayout zmienną wiersz do której napisałem wskaźnik . Tyle że nie mogę tego skompilować próbowałem już wielu rozwiązań ale żadne nie dało rezultatu .

Edit :
Błąd w tym przypadku :
/home/szymx/Projekty/qt-build-desktop-Qt_4_8_1_w_PATH__System__Release/../qt/okno.hpp:18: błąd:storage class specified for 'wwiersz'

mychal
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Przedmonitorze Górne
0

Ten wwiersz w ogóle Ci nie jest potrzebny. Nie możesz jak człowiek w konstruktorze oknogl wywołać setLayout(wiersz)? Po co takie kombinowanie?

TH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 27
0

Ech wtedy wyrzuca Błąd : wiersz was not declared in this scope . Więc po to wskaźnik .

mychal
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Przedmonitorze Górne
0

Czy w ogóle przeczytałeś to co napisałem? przeniosłeś setLayout do konstruktora? czy nadal wywołujesz go w mainie?

TH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 27
0

Przepraszam , źle zrozumiałem . Przeniosłem do konstruktora o nic się nie czepia teraz ale jedynie jest "Program nieoczekiwanie przerwał pracę " w każdym razie dzięki za pomoc .

mychal
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Przedmonitorze Górne
0

Ponieważ nigdzie nie tworzysz otzam. Dodaj w konstruktorze

Kopiuj
otzam = new QPushButton(...);
TH
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 27
0

Panie Nazareński jaki ze mnie Debil że to przeoczyłem większy niż Hitler gdy nie zauważył że gra na dwa fronty może się źle skończyć . W każdym razie Ogromniaste dzięki !

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.