在LabWindows/CVI中程控的调整表格控件的属性
主要软件:
主要软件版本: N/A
主要软件修正版本: N/A
次要软件: LabWindows/CVI Development Systems>>Base Package
问题: 我在LabWindows/CVI中使用了一个表格控件,我希望能程控的设置不同的表格属性,诸如表格大小,列宽和行高等等。我应该怎样做?
解答: 下面列出的四部分内容分别描述了怎样程控的插入/删除行或者列,怎样设置行高和列宽,怎样调整表格控件的大小,以及怎样显示一定数量的行和列。关于下面所提到函数的语法和参数的相关文档,您可以从LabWindows/CVI 的帮助向导中找到,它位于
Start » All Programs » National Instruments » LabWindows/CVI x.x » LabWindows/CVI Help.
- 插入和删除行或列
- 插入 - 使用 InsertTableColumns 和 InsertTableRows 函数。
- 删除 - 使用 DeleteTableColumns 和 DeleteTableRows 函数。
- 设定列宽和行高
(注意:调整行和列的属性不会影响整个表格控件的大小)
- 列宽 - 使用 SetTableColumnAttribute 函数。下面的语句将第2列的列宽设置为100个像素。
SetTableColumnAttribute(panelHandle, PANEL_TABLE, 2, ATTR_COLUMN_WIDTH, 100)
- 行高 - 每行的高度是由 ATTR_SIZE_MODE 和 ATTR_ROW_HEIGHT 的行属性决定的。在默认情况下,ATTR_SIZE_MODE 的值是 VAL_SIZE_TO_CELL_IMAGE_AND_FONT,这意味着行高是自动计算的,无论你给 ATTR_ROW_HEIGHT 设什么值,都将被忽略。所以,为了调整行高,首先必须将行属性 ATTR_SIZE_MODE 设成 VAL_USE_EXPLICIT_SIZE,然后再为行属性 ATTR_ROW_HEIGHT 设定你所希望的值。下面的语句将第2行的行高设置为100个像素点。
SetTableRowAttribute ((panelHandle, PANEL_TABLE, 2, ATTR_SIZE_MODE, VAL_USE_EXPLICIT_SIZE)
SetTableRowAttribute((panelHandle, PANEL_TABLE, 2, ATTR_ROW_HEIGHT, 100)
- 设置表格控件的高度和宽度
- 表格高度 - 在 SetCtrlAttribute 函数中,使用 ATTR_HEIGHT 属性来设置表格高度。下面的语句将表格控件的高度设为55个像素点。
SetCtrlAttribute (panelHandle, PANEL_TABLE, ATTR_HEIGHT, 55)
- 表格宽度 - 在 SetCtrlAttribute 函数中,使用 ATTR_WIDTH 属性来设置表格宽度。下面的语句将表格控件的宽度设为55个像素点。
SetCtrlAttribute (panelHandle, PANEL_TABLE, ATTR_WIDTH, 55)
- 显示 X 行或列
要显示具体数量的行或列,可以使用 SetCtrlAttribute 函数中的ATTR_NUM_VISIBLE_ROWS 和 ATTR_NUM_VISIBLE_COLUMNS 属性。下面的语句显示了前5行和前5列。
SetCtrlAttribute (panelHandle, PANEL_TABLE, ATTR_NUM_VISIBLE_ROWS, 5)
SetCtrlAttribute (panelHandle, PANEL_TABLE, ATTR_NUM_VISIBLE_COLUMNS, 5)
上述两句语句将在不考虑每行行高和列宽的情况下,修改表格以使得前5行和列显示出来。如果表格的行数和列数少于5,LabWindows/CVI 将会基于行和列的默认大小,为其余的行和列预留足够的空间。
相关链接:
KnowledgeBase 322B4BYL: Enabling and Disabling Row and Column Resizing in Tables
附件:
报告日期: 11/17/2006
最近更新: 11/21/2006
文档编号: 3R26QL6S
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.