Qt:如何在 QVBoxLayout 中交替对齐 QTextEdit?
Qt : How to alternate alignment of a QTextEdit in a QVBoxLayout?
我想在布局中添加 QTextEdit 小部件并改变对齐方式
QVBoxLayout *lt = new QVBoxLayout;
for(int i=0;i<5;i++)
{
text1 = new QTextEdit;
text1->setText("Hello world !" + QString::number(i));
text1->setMaximumSize(100,30);
lt->addWidget(text1);
lt->setAlignment(Qt::AlignLeft);
if(i%2)
{
lt->setAlignment(Qt::AlignRight);
}
else
{
lt->setAlignment(Qt::AlignLeft);
}
}
setLayout(lt);
但是,QTextEdits 都是左对齐的。
我的问题有解决方案吗?
只是检查 Qt doc 我发现我只需要在 QVBoxLayout 中添加我的小部件时添加一些参数
这是代码:
QVBoxLayout *lt = new QVBoxLayout;
for(int i=0;i<5;i++)
{
text1 = new QTextEdit;
text1->setText("Hello world !" + QString::number(i));
text1->setMaximumSize(100,30);
if(i%2)
{
lt->addWidget(text1, 0, Qt::AlignRight);
}
else
{
lt->addWidget(text1, 0, Qt::AlignLeft);
}
}
我想在布局中添加 QTextEdit 小部件并改变对齐方式
QVBoxLayout *lt = new QVBoxLayout;
for(int i=0;i<5;i++)
{
text1 = new QTextEdit;
text1->setText("Hello world !" + QString::number(i));
text1->setMaximumSize(100,30);
lt->addWidget(text1);
lt->setAlignment(Qt::AlignLeft);
if(i%2)
{
lt->setAlignment(Qt::AlignRight);
}
else
{
lt->setAlignment(Qt::AlignLeft);
}
}
setLayout(lt);
但是,QTextEdits 都是左对齐的。
我的问题有解决方案吗?
只是检查 Qt doc 我发现我只需要在 QVBoxLayout 中添加我的小部件时添加一些参数 这是代码:
QVBoxLayout *lt = new QVBoxLayout;
for(int i=0;i<5;i++)
{
text1 = new QTextEdit;
text1->setText("Hello world !" + QString::number(i));
text1->setMaximumSize(100,30);
if(i%2)
{
lt->addWidget(text1, 0, Qt::AlignRight);
}
else
{
lt->addWidget(text1, 0, Qt::AlignLeft);
}
}