主题:请教 gird 中 右键怎么用
			
 xm7050432
				 [专家分:180]  发布于 2009-01-05 17:34:00							
			各位老师好,
    比如我做了一个表单,主要是用来查询用,里面有一个gird用来显示查询的结果,
如果我选中某条结果,想通过点击鼠标右键直接打开一个新的表单,这个表单可以看清这条结果的详细信息。
   我现在是暂时选中结果后,再点击另一个按钮,感觉比较麻烦。
按钮的代码大概如下:
SELECT lsjfcx          $$ lsjfcx是grid的数据源,也是一个临时表。
jfdh=ALLTRIM(单号)     $$ 单号是其中一个字段
SELECT XXX 
LOCATE for 单号=jfdh
jjghjfd=RECNO()
DO form xxxxx.scx
请问如果想通过直接点击右键,难后选择打开xxxxx.scx.可否实现。谢谢。
						
					 
		
			
回复列表 (共14个回复)
		
								
				沙发
				
					
xm7050432 [专家分:180]  发布于 2009-01-06 09:31:00				
				请各位老师抽空指教下,哪里有写不清楚的地方,我再补充。谢谢。
							 
						
				板凳
				
					
moz [专家分:37620]  发布于 2009-01-07 10:53:00				
				右键有事件可用
.RightClick
如果要菜单方式,可以在右键事件里运行事先写好的右键菜单
							 
						
				3 楼
				
					
xm7050432 [专家分:180]  发布于 2009-01-08 08:31:00				
				moz老师,
   谢谢你抽空回复,我知道应该在rightclick里写,我的希望就是有弹出菜单,就是类是我们正常右键的时候,会出现复制,粘贴等。 我把我原来的代码复制进rightclick但是没有反应,也有研究了右键出现复制,粘贴剪切的代码,但是还是不明白。
  能不能麻烦moz老师帮我讲解写。谢谢。
							 
						
				4 楼
				
					
fyyylyl [专家分:8550]  发布于 2009-01-08 11:14:00				
				将你按钮中的代码写入某一列的Text控件的rightclick事件中。
如界面允许(或用页框),先将两表关联不就能同步显示了吗?也少了再打开新表单的麻烦。
							 
						
				5 楼
				
					
xm7050432 [专家分:180]  发布于 2009-01-08 17:30:00				
				[quote]将你按钮中的代码写入某一列的Text控件的rightclick事件中。
如界面允许(或用页框),先将两表关联不就能同步显示了吗?也少了再打开新表单的麻烦。[/quote]
谢谢您的回复,功能大概是实现了,但是一个问题,比如我写在第三列,只能在第三列右击才有效,而且不会出现选择的对话框,直接就弹出界面,怪怪的。要怎么改进呢。
我想要的效果是不管再哪列都可以右键单机(一列一列+太麻烦了,),然后出现一个选择,再点击才会弹出界面。谢谢。
							 
						
				6 楼
				
					
moz [专家分:37620]  发布于 2009-01-08 19:09:00				
				grid1.RightClick
调用菜单是什么命令来着?我忘了,查一查帮助文档吧。
菜单使用快捷菜单,跟普通菜单的写作方法是一样的。
							 
						
				7 楼
				
					
xm7050432 [专家分:180]  发布于 2009-01-09 17:18:00				
				[quote]grid1.RightClick
调用菜单是什么命令来着?我忘了,查一查帮助文档吧。
菜单使用快捷菜单,跟普通菜单的写作方法是一样的。[/quote]
谢谢您的回复,你的意思是写在grid.rightclick.里就可以随便位置点击弹出选项框了吗?   我试了没反应。不怕您见笑。
菜单使用快捷菜单,跟普通菜单的写作方法是一样的。这句话我没怎么看明白,不好意思啊?能讲解下吗?
							 
						
				8 楼
				
					
cbl518 [专家分:57140]  发布于 2009-01-09 23:23:00				
				在表格控件的 init 事件写入:
FOR each o1 in   this.Objects
    BINDEVENT(o1.text1,"RightClick",this, "RightClick")
ENDFOR
							 
						
				9 楼
				
					
cbl518 [专家分:57140]  发布于 2009-01-09 23:27:00				
				在thisform.grid1.rightclick.里:
写入你的弹出菜单代码。
随便位置点击,就可以弹出菜单选项框了。
祝你好运!!!
							 
						
				10 楼
				
					
xm7050432 [专家分:180]  发布于 2009-01-12 11:05:00				
				[quote]在表格控件的 init 事件写入:
FOR each o1 in   this.Objects
    BINDEVENT(o1.text1,"RightClick",this, "RightClick")
ENDFOR[/quote]
谢谢您的回复,最近一直没机会试,试完我回来报告情况。
我有个想法,是不是点击grid的表头排序,也可以按照类似处理,省得每个表头都去写代码。不知道行不行的通。
							 
									
			
我来回复