Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoa 在窗口内拖动NSTextField_Cocoa_Drag And Drop_Draggable_Nstextfield - Fatal编程技术网

Cocoa 在窗口内拖动NSTextField

Cocoa 在窗口内拖动NSTextField,cocoa,drag-and-drop,draggable,nstextfield,Cocoa,Drag And Drop,Draggable,Nstextfield,我正在尝试制作一个小应用程序,让你在画布(窗口)上添加文本框。我有一个NSTextField,需要让您在窗口中拖动它。当你放下它时,它需要停留在你鼠标离开它的地方。以下是我创建第一个文本字段的代码: NSTextField *myTextField=[[NSTextField alloc] initWithFrame:NSMakeRect(200.0, 200.0, 200.0, 25.0)]; [myTextField setBordered:NO]; [myTextField setStri

我正在尝试制作一个小应用程序,让你在画布(窗口)上添加文本框。我有一个NSTextField,需要让您在窗口中拖动它。当你放下它时,它需要停留在你鼠标离开它的地方。以下是我创建第一个文本字段的代码:

NSTextField *myTextField=[[NSTextField alloc] initWithFrame:NSMakeRect(200.0, 200.0, 200.0, 25.0)];
[myTextField setBordered:NO];
[myTextField setStringValue:@"Double Click to edit"];
[[window contentView] addSubview:myTextField];
//Some sort of dragging code for myTextField

如果有人曾经做过类似的事情,我非常感谢您的帮助。

我的第一反应是创建
NSTextField
的子类,并覆盖部分或全部
mouseDown:
mouseDragged:
mouseUp:
来创建所需的拖动行为。这可能会有帮助。

谢谢,我正在使用鼠标标记,但我正在试图找出如何更新tex字段的位置。啊,好的。您可以寻找其他可拖动控件的开源示例。我想到的一个-,并不是你正在做的那种拖动,但是如果你看那里的代码,你可以看到它如何看待鼠标位置的变化,并使用这些变化来改变组合框弹出窗口的高度。在我目前试图解决同一个问题的时候,你有没有做到这一点??