Qt在使用表格时如果文本太长就会显示不全。这时候就需要用到自动换行。
QTableView有函数设置自动换行:void setWordWrap(bool on)
然而当我们调用setWordWrap(true)时却发现没有换行效果。
原来它只负责控制是否换行,但是并不能改变单元格的高度。单元格高度不够就无法
换行了。因此我们需要改变行高即可。在设置完数据后调用
在默认情况下,如果QDateTimeEdit类构造时不指定日期时间,那么系统会为其设置一个和本地相同的日期时间格式,并且值为2000年1月1日0时0分0秒,也可以手动指定控件显示的日期时间。除了通过构造函数指定所显示的日期时间外,也可以根据QDateTimeEdit提供的槽函数来设置。
它允许用户通过鼠标或键盘选择日期,默认选中的是今日的日期。也可以对日期的范围进行规定。
错误代码都没有呢?估计是你定义的SLOT有问题。
你看看我写的这段代码吧,是选取QComboBox控件中的文本内容的。
intmain(intargc,charargv)
{
QApplicationapp(argc,argv);
QComboBoxcomboBox=newQComboBox;
QTextEdittextEdit=new QTextEdit;
QVBoxLayoutlayout=new QVBoxLayout;
layout->addWidget(textEdit);
layout->addWidget(comboBox);
comboBox->addItem(QObject::tr("ComboBoxItem01"));
comboBox->addItem(QObject::tr("ComboBoxItem02"));
comboBox-addItem(QObject::tr("ComboBoxItem03"));
QObject::connect(comboBox,SIGNAL(activated(QString)),textEdit,SLOT(insertPlainText(QString)));
QWidget mainWin;
mainWinsetLayout(layout);
mainWinresize(770,550);
mainWinshow();
returnappexec();
}
可以用edit显示数据库中的数据,但是当前记录发生变化的时候,你需要手动更新edit中的内容
DBedit直接可以修改数据库数据,当数据库的当前记录发生变化的时候,会自动post到数据库中的,不需要设置
写间函数定义QTimer象timerinterval设置1000间输:
QTimer timer;
timersetInterval(1000);
timerstart();
connect(&timer,SIGNAL(timeOut()),this,SLOT(myTimerout()));
void thisObject::myTimerOut()
{
ui->textBrowser->append(QString("hello ===>> %1")arg(i));
}
(timer必须类员象或者指针象能局部哈)
// QTextEdit是多行文本编辑框,自动换行的,如果你要加行号,可以根据如下API进行
QTextEdit textEdit = new QTextEdit();
// 转换成TextDocument
QTextDocument document = textEdit->document();
// 获取行数
int nRowcnt = document->lineCount();
以上就是关于Qt QPlainTextEdit的软换行怎么得到我想把它换成硬换行,能否实现全部的内容,包括:Qt QPlainTextEdit的软换行怎么得到我想把它换成硬换行,能否实现、QTimeEdit设置双击修改时间、QT中ComboBox如何获取选中的文本内容下面程序出错了,如何改正等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)