我正在使用gtk + -2.0&编写一个文本编辑器。 gtksourceview-2.0。我找不到以编程方式选择文本块并将其添加到OS(linux)主选择剪贴板的方法。就像我用鼠标高亮显示文本块或按住Shift键并使用箭头键选择文本一样。
我在devhelp中找到了“gtk_text_buffer_get_selection_bound()”声明:
缓冲区中当前选定的文本是“selection_bound”和“insert”标记之间的区域。
修改 gtk_text_buffer_select_range(),设置这两个标记的位置。
以下代码块副本,使用文本iters start& amp;结束,到主要选择剪贴板(根据需要):
gtk_text_buffer_select_range (tbuffer, &start, &end);
GtkClipboard *cb = gtk_clipboard_get(GDK_SELECTION_PRIMARY);
gtk_text_buffer_copy_clipboard (tbuffer,cb);
感谢您的想法!!!
答案 0 :(得分:1)
也许你应该试试gtk_editable_copy_clipboard ()。文档说“在可编辑的内容中复制当前所选内容的内容并将其放在剪贴板上”。然后使用gtk_editable_paste_clipboard ()粘贴,“将剪贴板的内容粘贴到可编辑的光标的当前位置。”