不知有没有人遇到过这样的奇怪现象?在一个程序的主窗口和另外一个窗口中放置的TEdit、TMemo等输入控件都不接受Ctrl+C、Ctrl+V、Ctrl+X等剪贴

Z

zqw0117

Unregistered / Unconfirmed
GUEST, unregistred user!
不知有没有人遇到过这样的奇怪现象?在一个程序的主窗口和另外一个窗口中放置的TEdit、TMemo等输入控件都不接受Ctrl+C、Ctrl+V、Ctrl+X等剪贴板操作?(100分)<br />我有一个程序,其主窗口和另外一个窗口中的任何TEdit、TMemo控件都无法接受
键盘快捷键Ctrl+C、Ctrl+V、Ctrl+X等操作,但是其它窗口又正常,不知原因在
哪?

我试过将一些不用的Uses单元去掉,但还是不行。而起我也详细检查过这两个窗
口中的源代码,没有任何拦截上述消息或KeyDown、KeyUp、KeyPress等事件,但
就是找不出原因!

不知有没有哪位大虾曾经遇到过如此之怪的问题?能否指点一下小弟?
 

你是不是在form 的onkeydown事件中对ctrl功能键进行了处理?
比如一有涉及该键,就进行其它处理。建议你再检查一下你的事件过程。

另外,检查一下 form的设置,你试着新打开一个form,然后将你的有
问题的form的属性设为与其一致。
 
事件过程我已经检查过N遍了,没有您说的任何类似代码,而且我没有在主窗口中
使用认可控件的KeyDown,KeyUp,KeyPress事件。

真是问题怪哉!
 
我也发现一个问题,在编辑TEDit时,你用onKeyPerss和onKeyDown是截取不
Shift+Tab的健值的,我昨天搞了一天也搞不明白。现在看来可能要截取窗口
的消息。
 
to zqw0117
看看你的菜单,
是不是有用到快捷键Ctrl+C、Ctrl+V、Ctrl+X等操作,
把菜单的去掉或换掉后正常。
 
你看一下你窗体的keypreview是否赋为true啦。
 
我终于找到原因所在了:原来我添加了一个TActionList控件,当初设定了ActionCut,
ActionCopy, ActionPaste等动作,但是并未编写该动作的任何代码,结果就是它们屏
蔽了默认的操作。谢谢小小K!
 
顶部