关键词不能为空

当前您在: 主页 > 英语 >

QtableWidget的用法总结

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-13 19:13
tags:

-

2021年2月13日发(作者:懒惰的英文)


N


z


在使用


Qt


不多的日子里,已经两次用到了


QTableWidget


这个控件,也慢慢的习惯和喜欢上


了它。再使用


QTableWidget


的时候,已不像刚开始使用时的迷茫。嗯嗯。现在就来总结总 结我



QTableWidget


相识 的历程


......(*^__^*)


嘻嘻……



使用时也查过不少资料,在此感谢前辈们的用心总结与分享!








★∴






... .▍▍.


..


.█▍





★∵


..../






◥█▅▅██▅▅██▅▅▅▅▅███◤







.◥███████████████◤




~~~~◥█████████████◤~~~~



Widget


不能在


mainwindow


中随主窗口的大小变化?




解决:在表格外部添加布局。




代码:


tableWidget = new QTableWidget;



tableWidget ->setObjectName(QString::fromUtf8(



QVBoxLayout *verticalLayout;



verticalLayout->addWidget(tableWidget );



2.


将表格变为禁止编辑:



tableWidget->setEditTriggers(QAbstrac tItemView::NoEditTriggers);




(参数含义:


Triggers--


不 能对表格内容进行修改



tChanged--


任何时候都能对单元格修改



Clicked--


双击单元格



edClicked--


单击已选中的内容




yPressed--



Pressed--


按下任意键就能修改



tTriggers--


以上条件全包括)



3.


设置表格为整行选择



tableWidget->setSelectionBehavior(QAb stractItemView::SelectRows); //


整行选中的方





(参数含义:


Items--


选中单个单元格



Rows--


选中一行



Columns--


选中一列)



4.


单个选中和多个选中的设置:



tableWidget->setSelectionMode(QAbstra ctItemView::ExtendedSelection);


//


设置为可


以选中多个目标




(参数含义:


ction--


不能选择



Selection--


选中单个目标



election--


选中多个目标



edSelection/uousSelection



的区 别


不明显,主要功能是正常情况下是单选,但按下


Ctrl



Shift


键后,可以多选)

< p>


5.


表格表头的显示与隐藏




对于水平或垂直方法的表头,可以用以下方式进行



隐藏


/


显示



的设置:



tableWidget->verticalHeader()->setVisible(false); //


隐藏列表头




tableWidget->horizontalHeader()->setV isible(false); //


隐藏行表头





注意:需要


#include



6.


对表头文字的字体、颜色进行设置




QTableWidgetItem *columnHeaderItem0 = tableWidget->horizontalHeaderItem(0); //



得水平方向表头的


Item


对象< /p>




columnHeaderI tem0->setFont(QFont(


设置字体




columnHeaderItem0->setBac kgroundColor(QColor(0,60,10)); //


设置单元格背景颜色




columnHeaderItem0->setTextColor(QColo r(200,111,30)); //


设置文字颜色




注意:需要


#include



7.


在单元格里加入控件:



QComboBox *comBox = new QComboBox();



comBox->addItem(



comBox->addItem(



tableWidget->setCellWidget(0,2,comBox);



8.


单元格中添加图片:



tableWidget->setItem(row, 0, new QTableWidgetItem(QIcon(


o



9


设置单元格字体颜色、背景颜色和字体字符:



QTableWidgetItem *item = new QTableWidgetItem(



item->se tBackgroundColor(QColor(0,60,10));



item->setTextColor(QColor(200,111,100 ));



item->setFont(QFont(



tableWidget->setItem(0,3,item);




另:如果需要对所有的单元格都使用这种字体,则可以使< /p>



tableWidget->setFont(QFont(



10.


设置单元格内文字的对齐方式




水平对齐方式有:



Constant Value Description



eft 0x0001 Aligns with the left edge.



ight 0x0002 Aligns with the right edge.



Center 0x0004 Centers horizontally in the available space.



ustify 0x0008 Justifies the text in the available space.




垂直对齐方式:



Constant Value Description



op 0x0020 Aligns with the top.



ottom 0x0040 Aligns with the bottom.



Center 0x0080 Centers vertically in the available space.




如果两种都要设置,只要用


Center | Center


的方式即可



11.


合并单元格:



tableWidget->setSpan(0, 0, 3, 1) #


其参数为:



要改变单元格的


1


行数、


2


列数,要合


并的


3


行数、


4


列数



12.


设置单元格的大小




首先,可以指定某个行或者列的大小



tableWidget->setColumnWidth(3,200);



tableWidget->setRowHeight(3,60);



还可以将行和列的大小设为与内容相匹配



tableWidget->resizeColumnsToContents();



tableWidget->resizeRowsToContents();



13.


获得单击单元格的内容




通过实现


itemClicked (QTableWidgetItem *)


信号的槽函数 ,


就可以获得鼠标单击到的单元


格指针,进而获得其中的文字信 息



connect(tableWidget,SIGNAL (itemDoubleClicked(QTreeWidgetItem*,int)),this,SLO T(getIt


em(QTreeWidgetItem*,int)));

< p>


//



itemCli cked


信号与函数


getItem


绑 定



Widget


要调整表格行宽主要 涉及以下函数



tableWidget->horizo ntalHeader()->setResizeMode(QHeaderView::Stretch); //


使列完全填


充并平分



tableWidget->verticalHeader()->setRes izeMode(QHeaderView::Stretch);//


行自适应宽






tableWidget->resizeColumnsToContents(); //


根据内容调整列宽



tableWidget->resizeColumnToContents(int col);//


根据内容自动调整给定列宽



tableWidget->horizontalHeader()->setR esizeMode//


把给定列设置为给定模式




主要模式有


Stretch



Fixed



15.


添加表头内容:




方法一:



QStringList header;



header<<




方法二:



tableWidge t->setHorizontalHeaderLabels(QStringList() << tr(


<



16.


清除:



tableWidget->clear();//


清除所 有可见数据(包括表头),行还在



tableWidge t->clearContents();//


只清除表中数据,不清除表头内容



tableWidget->setRowCount(0)< /p>



//


连行也清除掉


15.


一些零碎的知识点代码:



int row = tableWidget->rowCount();//< /p>


获取表格中当前总行数



table Widget->setRowCount(row+1);//


添加一行



tableWidget->removeRow(row);//< /p>


清除已有的行列



Int row1 = tableWidget->currentItem()->row();//


当 前选中行


-


-


-


-


-


-


-


-



本文更新与2021-02-13 19:13,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/652203.html

QtableWidget的用法总结的相关文章

  • 余华爱情经典语录,余华爱情句子

    余华的经典语录——余华《第七天》40、我不怕死,一点都不怕,只怕再也不能看见你——余华《第七天》4可是我再也没遇到一个像福贵这样令我难忘的人了,对自己的经历如此清楚,

    语文
  • 心情低落的图片压抑,心情低落的图片发朋友圈

    心情压抑的图片(心太累没人理解的说说带图片)1、有时候很想找个人倾诉一下,却又不知从何说起,最终是什么也不说,只想快点睡过去,告诉自己,明天就好了。有时候,突然会觉得

    语文
  • 经典古训100句图片大全,古训名言警句

    古代经典励志名言100句译:好的药物味苦但对治病有利;忠言劝诫的话听起来不顺耳却对人的行为有利。3良言一句三冬暖,恶语伤人六月寒。喷泉的高度不会超过它的源头;一个人的事

    语文
  • 关于青春奋斗的名人名言鲁迅,关于青年奋斗的名言鲁迅

    鲁迅名言名句大全励志1、世上本没有路,走的人多了自然便成了路。下面是我整理的鲁迅先生的名言名句大全,希望对你有所帮助!当生存时,还是将遭践踏,将遭删刈,直至于死亡而

    语文
  • 三国群英单机版手游礼包码,三国群英手机单机版攻略

    三国群英传7五神兽洞有什么用那是多一个武将技能。青龙飞升召唤出东方的守护兽,神兽之一的青龙。玄武怒流召唤出北方的守护兽,神兽之一的玄武。白虎傲啸召唤出西方的守护兽,

    语文
  • 不收费的情感挽回专家电话,情感挽回免费咨询

    免费的情感挽回机构(揭秘情感挽回机构骗局)1、牛牛(化名)向上海市公安局金山分局报案,称自己为了挽回与女友的感情,被一家名为“实花教育咨询”的情感咨询机构诈骗4万余元。

    语文