2010-04-18 3 views
0

Я пытаюсь сделать небольшое приложение, которое позволяет добавлять текстовые поля к вам в холст (окно). У меня есть NSTextField, который должен позволить вам перетащить его вокруг окна. Когда вы его бросаете, он должен оставаться в том месте, где вы его оставили. Heres мой код, чтобы текстовое поле кулака:Перетаскивание 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, но Im пытается выяснить, как обновить положение полей tex. – nosedive25

+0

Ах, ладно. Вы можете искать примеры с открытым исходным кодом для других управляемых элементов управления. Тот, который я имел в виду - http://code.google.com/p/igresizablecombobox/ - это не то, что вы делаете, но если вы посмотрите на код там, вы можете посмотреть, как он смотрит на изменения в позиции мыши и использует эти изменения для изменения высоты всплывающего окна со списком. – Isaac

+0

Получили ли вы эту работу вообще, поскольку я в настоящее время пытаюсь решить идентичную проблему? – Roger