mkdir pokus
cd pokus
kate pokus.cc
qmake -project
qmake
make
./pokus
#include <qapplication.h>
#include <qpushbutton.h>
#include <qslider.h>
#include <qlcdnumber.h>
#include <qfont.h>
#include <qvbox.h>
class MyWidget : public QVBox
{
Q_OBJECT
public:
MyWidget( QWidget *parent=0, const char *name=0 );
private:
QPushButton * quit;
public slots:
void stisknuto ();
};
#include "pokus.moc"
void MyWidget::stisknuto ()
{
quit->setText ("ABC");
}
MyWidget::MyWidget( QWidget *parent, const char *name )
: QVBox( parent, name )
{
quit = new QPushButton( "Knoflik", this, "quit" );
quit->setFont( QFont( "Times", 18, QFont::Bold ) );
connect( quit, SIGNAL(clicked()), this, SLOT(stisknuto()) );
QLCDNumber *lcd = new QLCDNumber( 2, this, "lcd" );
QSlider * slider = new QSlider( Horizontal, this, "slider" );
slider->setRange( 0, 99 );
slider->setValue( 0 );
connect( slider, SIGNAL(valueChanged(int)), lcd, SLOT(display(int)) );
}
int main( int argc, char **argv )
{
QApplication a( argc, argv );
MyWidget w;
a.setMainWidget( &w );
w.show();
return a.exec();
}
#include <iostream>
#include <qapplication.h>
#include <qpushbutton.h>
#include <qvbox.h>
#include <qhbox.h>
#include <qvaluevector.h>
#include <qtextedit.h>
using namespace std;
class MyButton;
class MyWidget : public QWidget
{
Q_OBJECT
public:
MyWidget ( QWidget *parent=0, const char *name=0 );
private:
QPushButton * button;
QValueVector < MyButton * > knofliky;
QTextEdit * edit;
public slots:
void abc ();
void vypis ();
// void def ();
// void klm (int i);
};
class MyButton : public QPushButton
{
Q_OBJECT
public:
MyButton ( const char *text, QWidget *parent=0, const char *name=0 );
public slots:
void stisknuto ();
};
#include "pokus.moc"
void MyButton::stisknuto ()
{
setText ("Click");
setGeometry (100, 10, 70, 20);
}
MyButton::MyButton ( const char *text, QWidget *parent, const char *name )
: QPushButton( text, parent, name )
{
}
void MyWidget::abc ()
{
button->setText ("Stiknuto");
setBackgroundColor(QColor (200, 128, 100));
MyButton * p = new MyButton ("Knoflik", this);
knofliky.push_back (p);
p->show ();
connect( p, SIGNAL(clicked()), p, SLOT(stisknuto ()) );
// ( new QPushButton ("Knoflik", this) ) ->show ();
}
void MyWidget::vypis ()
{
edit->setText ("");
cout << "Seznam knofliku" << endl;
for (int i = 0; i < knofliky.size (); i++)
{
cout << "knoflik " << i << " " << knofliky[i]->text () << endl;
edit->append (QString ("knoflik ") + QString::number (i) + " " + knofliky[i]->text ());
}
}
MyWidget::MyWidget( QWidget *parent, const char *name )
:
QWidget( parent, name ),
button (NULL)
{
setMinimumSize( 200, 120 );
// setMaximumSize( 400, 240 );
setBackgroundColor(QColor (128, 128, 255));
button = new QPushButton( "Quit", this, "quit" );
button->setGeometry( 62, 40, 120, 30 );
button->setFont( QFont( "Times", 18, QFont::Bold ) );
connect( button, SIGNAL(clicked()), this, SLOT(abc ()) );
QPushButton * b = new QPushButton( "List", this);
b->setGeometry( 62, 80, 120, 30 );
connect( b, SIGNAL(clicked()), this, SLOT(vypis ()) );
edit = new QTextEdit (this);
edit->setGeometry( 62, 120, 200, 200 );
}
int main( int argc, char **argv )
{
QApplication a( argc, argv );
MyWidget w;
w.setGeometry( 100, 100, 200, 120 );
a.setMainWidget( &w );
w.show();
return a.exec();
}