VST实例(10) hint(提示)
Posted Luo大哥
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VST实例(10) hint(提示)相关的知识,希望对你有一定的参考价值。
VST也支持提示(hint)。
毫无疑问,要让VST支持hint,首先肯定需要设置:SHOWHINT:=TRUE;
其次,还应该设置hintmode。
TVTHintMode = (
hmDefault,
hmHint,
hmHintAndDefault,
hmTooltip
);
hmDefault :显示控件的hint,即VST的hint。
hmHint :显示程序返回的提示。
hmHintAndDefault :如果未对准节点,则显示控件的提示,否则类似hmhint
hmTooltip :当节点的单元格信息不能完全显示时,显示单元格的celltext的全部信息。
最后,在事件“ongethint”中给出提示信息。
本程序简化了提示信息,代码如下:
procedure TForm2.vstGetHint(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; var LineBreakStyle: TVTTooltipLineBreakStyle; var HintText: string); begin HintText:=\'信息:\'+vst.Text[NODE,Column]; end;
此外,你还可以在事件“ongethintsize”和“ongethintkind”中对提示信息进行进一步的定制。如果你选择了自己绘制提示信息,则需要在事件“ondrawhint”中自己绘制提示信息。
提示信息是支持换行的!
索引Hint提示(INDEX Hint)
定义:所谓的索引Hint提示,就是强制查询优化器为一个查询语句执行扫描或者使用一个指定的索引
前提:利用索引提示的前提就是当前表存在索引了,如果是堆表的情况,只能通过表扫描获取数据了。
用处:很多时候我们创建的索引是失效的,当然,大部分情况下失效的原因是创建索引不妥当导致的,但是有一些情况下,
需要我们来指导下T-SQL的运行方式,这时候就是索引Hint的使用场景了。
SELECT * FROM SYS.indexes WHERE OBJECT_NAME(object_id)=\'Orders\'
SELECT OrderID,CustomerID FROM Orders WITH(INDEX(1)) WHERE ShipPostalCode=N\'99362\' SELECT OrderID,CustomerID FROM Orders WITH(INDEX(9)) WHERE ShipPostalCode=N\'99362\'
以上是关于VST实例(10) hint(提示)的主要内容,如果未能解决你的问题,请参考以下文章