• 4847阅读
  • 4回复

刚学布局管理器碰到的一个小问题? [复制链接]

上一主题 下一主题
离线磐石
 
只看楼主 倒序阅读 楼主  发表于: 2010-02-28
                    Sedit=new QTextEdit;
    Redit=new QTextEdit;
                    QGridLayout *mainLayout=new QGridLayout(this);
    mainLayout->addWidget(Redit,0,0,5,0);
    mainLayout->addWidget(Sedit,6,0,2,0);
本来想的是程序界面出来时,Redit显示宽一点,而Sedit显示窄一点,但用上面代码行不通,运行后两个文本框显示一样大的,查看addWidget()用法,按上面所写的语句应该没错的,请高手们看看问题出哪了?

void QGridLayout::addWidget ( QWidget * widget, int fromRow, int fromColumn, int rowSpan, int columnSpan, Qt::Alignment alignment = 0 )

This is an overloaded function.

This version adds the given widget to the cell grid, spanning multiple rows/columns. The cell will start at fromRow, fromColumn spanning rowSpan rows and columnSpan columns. The widget will have the given alignment.
不怕做不到,只怕想不到
离线午小夜

只看该作者 1楼 发表于: 2010-02-28
mainLayout->addWidget(Redit,0,0,5,0);  //摆放在第1行第1列,占5行,0列  ...至少要占1列 .改成mainLayout->addWidget(Redit,0,0,5,1);  下同.
    mainLayout->addWidget(Sedit,6,0,2,0);
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线磐石
只看该作者 2楼 发表于: 2010-03-01
引用第1楼午小夜于2010-02-28 21:19发表的  :
mainLayout->addWidget(Redit,0,0,5,0);  //摆放在第1行第1列,占5行,0列  ...至少要占1列 .改成mainLayout->addWidget(Redit,0,0,5,1);  下同.
    mainLayout->addWidget(Sedit,6,0,2,0);

恩,谢谢,但我改成
mainLayout->addWidget(Redit,0,0,5,1);
mainLayout->addWidget(Sedit,6,0,2,1);
问题还是一样的,不论怎么改rowSpan和 columnSpan这两个参数,出来的效果还是一样的,两个文本框一样大,好像这两个参数不起作用的
不怕做不到,只怕想不到
离线zcycool
只看该作者 3楼 发表于: 2010-03-01
用spacer
离线磐石
只看该作者 4楼 发表于: 2010-03-01
引用第3楼zcycool于2010-03-01 13:43发表的  :
用spacer

能说详细一点吗,谢谢,帮助文档中没查到
不怕做不到,只怕想不到
快速回复
限100 字节
 
上一个 下一个