2010-04-18 70 views
0

我試圖做一個小應用程序,讓你添加文本框到你的畫布(窗口)。我有一個NSTextField,需要讓你拖動窗口。當你放下它時,它需要留在鼠標離開它的地方。繼承人我的代碼,使拳頭文本字段:拖動窗口內的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 

如果有人曾經做過這樣的事情,任何幫助真的很感激。

回答

0

我的第一本能是創建的NSTextField一個子類,並覆蓋部分或全部mouseDown:mouseDragged:mouseUp:創造你想要的拖拽行爲。 mouse events section in Apple's Event-Handling Guide可能會有所幫助。

+0

謝謝我使用mouseDragged,但我試圖找出如何更新tex字段的位置。 – nosedive25 2010-04-19 02:12:29

+0

啊,好吧。您可能會尋找其他可拖動控件的開源示例。我記住的那個人 - http://code.google.com/p/igresizablecombobox/ - 並不完全是你在做的拖拽,但如果你看看代碼,你可以瞭解它如何查看鼠標位置的變化,並使用這些更改來更改組合框彈出窗口的高度。 – Isaac 2010-04-19 05:07:42

+0

你是否正在努力解決相同的問題? – Roger 2012-01-09 16:07:12