随笔 - 505  文章 - 1034  trackbacks - 0
<2007年7月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234


子曾经曰过:编程无他,唯手熟尔!

常用链接

留言簿(94)

随笔分类(649)

随笔档案(505)

相册

BCB

Crytek

  • crymod
  • Crytek's Offical Modding Portal

Game Industry

OGRE

other

Programmers

Qt

WOW Stuff

搜索

  •  

积分与排名

  • 积分 - 800733
  • 排名 - 16

最新随笔

最新评论

阅读排行榜

评论排行榜


新代码: 
/****************************************************************
**
** Qt教程一 - 6
**
***************************************************************
*/

#include 
<QApplication>
#include 
<QPushButton>
#include 
<QSlider>
#include 
<QLcdNumber>
#include 
<QFont>
#include 
<QVBoxLayout>
#include 
<QGridLayout>

class LCDRange : public QWidget
{
public:
    LCDRange( QWidget 
*parent=0, Qt::WindowFlags f = 0 );
};

LCDRange::LCDRange( QWidget 
*parent, Qt::WindowFlags f /*= 0*/ )
        : QWidget( parent, f )
{
    QLCDNumber 
*lcd  = new QLCDNumber( 2this  );
    QSlider 
* slider = new QSlider( Qt::Horizontal, this );
    slider
->setRange( 099 );
    slider
->setValue( 0 );
    connect( slider, SIGNAL(valueChanged(
int)), lcd, SLOT(display(int)) );
    
    QVBoxLayout
* layout = new QVBoxLayout;
    layout
->addWidget(lcd);
    layout
->addWidget(slider);
    setLayout(layout);
}

class MyWidget : public QWidget
{
public:
    MyWidget( QWidget 
*parent=0, Qt::WindowFlags f = 0 );
};


MyWidget::MyWidget( QWidget 
*parent, Qt::WindowFlags f /*= 0*/ )
        : QWidget( parent, f )
{
    QVBoxLayout
* layout = new QVBoxLayout;
    
    QPushButton 
*quit = new QPushButton( "Quit"this );
    quit
->setFont( QFont( "Times"18, QFont::Bold ) );
    quit
->resize(30030);

    connect( quit, SIGNAL(clicked()), qApp, SLOT(quit()) );

    QGridLayout 
*grid = new QGridLayout( this );

    
forint r = 0 ; r < 4 ; r++ )
    {
        
forint c = 0 ; c < 5 ; c++ )
        {
            grid
->addWidget( new LCDRange( this ), r, c);
        }
    }
    
// 这儿是这么用吗?
    layout->addWidget(quit, 1, Qt::AlignHCenter);
    layout
->addLayout(grid);
    setLayout(layout);
}

int main( int argc, char **argv )
{
    QApplication a( argc, argv );

    MyWidget w;
    w.resize(
600100);
    w.show();
    
return a.exec();
}

不过有问题,达不到如下效果,谁帮我看看 ?就是quit按钮跟grid的位置不和谐


2007-7-22:
这个教程居然就是qt自带的tutorial   t6,晕倒

这样子改就可以了:
/****************************************************************
**
** Qt教程一 - 6
**
***************************************************************
*/

#include 
<QApplication>
#include 
<QPushButton>
#include 
<QSlider>
#include 
<QLcdNumber>
#include 
<QFont>
#include 
<QVBoxLayout>
#include 
<QGridLayout>

class LCDRange : public QWidget
{
public:
    LCDRange( QWidget 
*parent=0, Qt::WindowFlags f = 0 );
};

LCDRange::LCDRange( QWidget 
*parent, Qt::WindowFlags f /*= 0*/ )
        : QWidget( parent, f )
{
    QLCDNumber 
*lcd  = new QLCDNumber( 2);
    QSlider 
* slider = new QSlider( Qt::Horizontal);
    slider
->setRange( 099 );
    slider
->setValue( 0 );
    connect( slider, SIGNAL(valueChanged(
int)), lcd, SLOT(display(int)) );
    
    QVBoxLayout
* layout = new QVBoxLayout;
    layout
->addWidget(lcd);
    layout
->addWidget(slider);
    setLayout(layout);
}

class MyWidget : public QWidget
{
public:
    MyWidget( QWidget 
*parent=0, Qt::WindowFlags f = 0 );
};


MyWidget::MyWidget( QWidget 
*parent, Qt::WindowFlags f /*= 0*/ )
        : QWidget( parent, f )
{
    QVBoxLayout
* layout = new QVBoxLayout;
    
    QPushButton 
*quit = new QPushButton( "Quit");
    quit
->setFont( QFont( "Times"18, QFont::Bold ) );

    connect( quit, SIGNAL(clicked()), qApp, SLOT(quit()) );

    QGridLayout 
*grid = new QGridLayout;

    
forint r = 0 ; r < 4 ; r++ )
    {
        
forint c = 0 ; c < 5 ; c++ )
        {
            grid
->addWidget( new LCDRange( this ), r, c);
        }
    }

    layout
->addWidget(quit);
    layout
->addLayout(grid);
    setLayout(layout);
}

int main( int argc, char **argv )
{
    QApplication a( argc, argv );

    MyWidget w;
    w.resize(
600100);
    w.show();
    
return a.exec();
}

posted on 2007-07-21 20:18 七星重剑 阅读(607) 评论(0)  编辑 收藏 引用 所属分类: PL--c/c++C++ lib -- Qt

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理