整理自各大网站........

问题

1.SetHorizontalHeaderLabels无效,不显示.原因是没有设置列数.

SetColumnCount(列数)

2.SetItem无效,不显示.原因是没有设置行数.

SetRowCount(行数)

用法

1.设置表头

	tmp:=[]string{"内网ip","外网ip","系统","主机名和用户名","协议","备注","上线版本"}
	Hosttable.SetColumnCount(7)
	Hosttable.SetHorizontalHeaderLabels(tmp)

2.设置行

        Hosttable.SetRowCount(1)
	num1 := widgets.NewQTableWidgetItem2("测试", 0)
	Hosttable.SetItem(0,0,num1)
1.和2.的效果

3.设置表格的选中方式

Hosttable.SetSelectionBehavior(widgets.QAbstractItemView__SelectRows)//整行选中
Constant Value Description
QAbstractItemView__SelectItems 0 Selecting single items.选中单个单元格
QAbstractItemView__SelectRows 1 Selecting only rows.选中一行
QAbstractItemView __ SelectColumns
2
Selecting only columns.选中一列

4.多行选中

Hosttable.SetSelectionMode(widgets.QAbstractItemView__ContiguousSelection) //ctrl选中
模式 描述
QAbstractItemView__NoSelection 项目不能被选择
QAbstractItemView __ SingleSelection 当用户选择一个项目时,任何已经被选中的项目都将被取消选择,并且用户不能通过单击它来取消选定的项目。
QAbstractItemView __ MultiSelection
当用户以通常的方式选择一个项目时,该项目的选择状态将被打开,其他项目将被单独保留。
可以通过将鼠标拖动到上面来进行多个项目。
QAbstractItemView __ ExtendedSelection 当用户以通常的方式选择一个项目时,选择将被清除,并选择新项目。
但是,如果用户在点击一个项目时按下Ctrl键,点击的项目就会被打开,所有其他的项目都不会被修改。
如果用户在单击某一项时按下Shift键,则根据所单击项的状态,选中或取消当前项和单击项之间的所有项。
可以通过拖动鼠标来选择多个项目。
QAbstractItemView __ ContiguousSelection
当用户以通常的方式选择一个项目时,选择将被清除,并选择新项目。
但是,如果用户在单击某项时按下Shift键,那么当前项和点击项之间的所有条目都会被选中或未选中,这取决于所点击条目的状态。

5.禁止编辑表格内容

Hosttable.SetEditTriggers(widgets.QAbstractItemView__NoEditTriggers) //禁止编辑表格内容

6.调整表格大小

Hosttable.HorizontalHeader().ResizeSection(i,168)

小学生是一个狂妄自大的人