Как написать письмо - в текстовом буфере gtkmmTextView? - PullRequest
3 голосов
/ 30 мая 2011

Когда я пытаюсь вставить - в Textbuffer TextView, CMD отображает следующую ошибку:

(textEditor.exe: 696): Gtk-CRITICAL **: gtk_text_buffer_emit_insert: утверждение g_utf8_validate (text,len, NULL) 'не удалось

Исходный пример (c ++ и gtkmm):

Glib::RefPtr<Gtk::TextBuffer> refTextBuffer = textView->get_buffer();
refTextBuffer->set_text("\xA4");            //hex ASCII
refTextBuffer->insert_at_cursor("ñ");

1 Ответ

1 голос
/ 30 мая 2011

Требуется значение UTF-8, и вы выбрали что-то в верхнем диапазоне ASCII, которое не отображается в UFT-8.Если вы посмотрите здесь , а затем здесь , вам понадобится значение 0xC3 0xB1, чтобы получить желаемый эффект.Быстрое предположение для кода, который должен работать для вас, это ...

refTextBuffer->set_text("\xC3\xB1"); //Hex version of UTF-8 Value
...