LINUX.ORG.RU

GTK# Copy, Paste и Cut в textView

 , , ,


0

1

На убунтах второй день. Захотелось попрограммировать, почитал в заранее про mono и начал писать простенькое gtk# приложение в monodevelop. Вобщем, обычный текстовый редактор .. На панели инструментов кнопки copy, paste и cut, хочу чтоб делали, то что должны )) в winForms это делалось в 3 строки .. здесь пытался через gtk.Clipboard

private void textView1_Copy (object sender, EventArgs e ) { Gtk.TextBuffer buffer = textview1.Buffer; Clipboard board = Clipboard.Get(Gdk.Selection.Clipboard); buffer.CopyClipboard (board); }

выдает 2 ошибки \ /home/cokesnort/test/test/MainWindow.cs(37,37): Error CS0584: Internal compiler error: Method not found: 'Gtk.Clipboard.OnOwnerChange'. (CS0584) (test) /home/cokesnort/test/test/MainWindow.cs(19,19): Error CS0266: Cannot implicitly convert type `object' to `Gtk.Clipboard'. An explicit conversion exists (are you missing a cast?) (CS0266) (test)

кто-нибудь может мне помочь?



Последнее исправление: CYB3R (всего исправлений: 2)

тут это делается в одну строчку. обработчику нажатия кнопки передаешь TextView в качестве данных, в самом обработчике - g_signal_emit_by_name (TextView, «cut-clipboard»). с учетом особенностей шарпа, надо будет дергать соответственный метод TextView, фиг его знает, как он там называется

ananas ★★★★★
()
Ответ на: комментарий от encyrtid

не вижу смысла постить весь код. я скинул код обработчика, который вызывается при нажатии кнопки Копировать и два исключения связанные с ним

forigen
() автор топика
Ответ на: комментарий от ananas

просто я понятия не имею что делает g_signal_emit_by_name и что такое «соответствующий метод textView»? куда это все пихать?)

forigen
() автор топика
Ответ на: комментарий от ananas

все равно выдает исключение =\ /home/cokesnort/test/test/MainWindow.cs(25,25): Error CS0103: The name `Glib' does not exist in the current context (CS0103) (test) могли бы посоветовать литературу какую-нибудь .. или объясниить что оно делает?

forigen
() автор топика
Ответ на: комментарий от forigen

оно делает очень простую штуку - посылает означенный сигнал означенному виджету. операции с буфером обмена уже зашиты в TextView и доступны через контекстное меню. от внешних кнопок требуется просто послать виджету нужный сигнал.

ananas ★★★★★
()
Ответ на: комментарий от forigen

не знаю. я разбираюсь в gtk, но терпеть не перевариваю всякие mono. направление поиска и архитектурное решение я вам подсказал, а реализация за вами

ananas ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.