右击ListView中的Item时,弹出一个上下文菜单(50分)

U

ucan1

Unregistered / Unconfirmed
GUEST, unregistred user!
问题一:

我要右击ListView中的Item时,弹出一个上下文菜单,该怎么做?最好给段代码.

我发现写在ListView中的onMouseUp事件;
当在非Item上点击时会触发;
而在Item上点击时则不会触发了;

代码如下:
=================================================
procedure TForm1.ListView1MouseUp(Sender: TObject
Button: TMouseButton;
Shift: TShiftState
X, Y: Integer);
var
tempItem:TListItem;
tempPoint:Tpoint;
begin
if button = mbRight then
begin
tempItem:=ListView1.Selected;
if tempItem <> nil then
begin
tempPoint.x:=x;
tempPoint.y:=y


GetCursorPos(TempPoint);
popupmenu1.Popup(TempPoint.x,TempPoint.y);
end;
end;
end


奇怪,当单击右键时没有出现菜单(应该出现);但是当双击右键时却出现菜单了。

*****************************************
问题二:
嵌入到网页中的ActiveX控件,如何获得插入的位置?
因为在ActiveXForm中的坐标X,Y在IE下就变成了整个屏幕的坐标了;
也就是说(0,0)在ActiveXForm中显示为左顶角位置;而到IE下时却变成了浏览器的
左顶角位置,而不是ActiveXForm的左顶角





 
T

takashiki

Unregistered / Unconfirmed
GUEST, unregistred user!
第一题:
procedure TForm1.ListView1MouseDown(Sender: TObject
Button: TMouseButton;
Shift: TShiftState
X, Y: Integer);
var
tempItem:TListItem;
tempPoint:Tpoint;
begin
if button = mbRight then begin
tempItem:=ListView1.Selected;
if tempItem <> nil then
begin
GetCursorPos(TempPoint);//不要用x,y
popupmenu1.Popup(TempPoint.x,TempPoint.y);
end;
end;
end;
问题2:
到网页里去找那个ActiveX的属性
 
U

ucan1

Unregistered / Unconfirmed
GUEST, unregistred user!
第一个问题:
我要的是onMouseUp;
第二个问题:
你等于没有回答,我就是找了但找不到;
 
U

ucan1

Unregistered / Unconfirmed
GUEST, unregistred user!
接受答案了.
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
863
DelphiTeacher的专栏
D
D
回复
0
查看
731
DelphiTeacher的专栏
D
顶部