【问题标题】:Dragging an NSTextField inside of a window在窗口内拖动 NSTextField
【发布时间】:2010-04-18 20:31:13
【问题描述】:

我正在尝试制作一个小应用程序,可让您将文本框添加到画布(窗口)。我有一个 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

如果有人做过这样的事情,任何帮助都非常感谢。

【问题讨论】:

    标签: cocoa drag-and-drop draggable nstextfield


    【解决方案1】:

    我的第一直觉是创建NSTextField 的子类并覆盖mouseDown:mouseDragged:mouseUp: 的部分或全部,以创建您想要的拖动行为。 mouse events section in Apple's Event-Handling Guide 可能会有所帮助。

    【讨论】:

    • 感谢我使用 mouseDragged 但我试图弄清楚如何更新 tex 字段位置。
    • 啊,好吧。您可能会寻找其他可拖动控件的开源示例。我想到的那个——code.google.com/p/igresizablecombobox——并不完全是你正在做的那种拖动,但是如果你看看那里的代码,你可以看到它是如何看待鼠标位置变化的,并且使用这些更改来改变组合框弹出窗口的高度。
    • 当我目前正在尝试解决相同的问题时,您有没有完成这项工作??
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多