我用TJVTreeView实现树的CheckBox功能,当一个节点Check时触发一个事件,但是我查了一下,这个控件好象没有提供OnChecked事件,那我把Check时触发的代码写在哪里呢。我现在是这样处理的,写在Onlick里。
procedure TfrmCzy.trvRightClick(Sender: TObject);
var fNode:TJVTreeNode;
begin
inherited;
fNode:=TJvTreeNode(trvRight.selected);
if showDlg('确实要赋予'+fNode.Text+'的所有权限吗?','询问',2,suiInformation)=mrOK then
showmessage('ok')
else
showmessage('cancel');
end;
这样带来一个问题,就是点击节点展开树时,也会出现提示框。最好是把这段代码写在类似OnChecked之类的事件里。请各位高手帮帮忙。
procedure TfrmCzy.trvRightClick(Sender: TObject);
var fNode:TJVTreeNode;
begin
inherited;
fNode:=TJvTreeNode(trvRight.selected);
if showDlg('确实要赋予'+fNode.Text+'的所有权限吗?','询问',2,suiInformation)=mrOK then
showmessage('ok')
else
showmessage('cancel');
end;
这样带来一个问题,就是点击节点展开树时,也会出现提示框。最好是把这段代码写在类似OnChecked之类的事件里。请各位高手帮帮忙。
解决方案 »
- 带框架网页中的按钮自动点击
- 大家看看 我这个多条件查询有没有错误!!!谢谢了大家!
- ComboBox1KeyDown(Sender: TObject; var Key: Word;Shift: TShiftState);中的key是什么意思?
- 报表中的QRLabel怎样设置成透明的?
- 太感人了
- interbase表与表链接问题
- 致广大网友的一封感谢信
- 来看看这个有用的小函数,哪里有问题?
- 寻高高手指点 cb5编写的ocx控件在delphi工程里不能使用的问题
- 请教一个关于image.canvas的问题
- 请大侠们推荐个打印预览控件(拜托各位)
- 我的程序打开时提示:找不到OLEdb32a.dll.怎么解决
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
—————————————————————————————————
procedure TfrmCzy.trvRightClick(Sender: TObject);
var
HitTests: THitTests;
fNode:TJVTreeNode;
begin
with TJVTreeView(Sender) do
with ScreenToClient(Mouse.CursorPos) do
HitTests := GetHitTestInfoAt(X, Y);
if htOnItem in HitTests then
begin
//这里才表示点击节点而不是其他,在此处写你的代码
end;
end;—————————————————————————————————
宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
—————————————————————————————————
牛人啊!厉害呀!
给分了!