# TextView (Vala)

Tiffany Antopolski
tiffany.antopolski@gmail.com 2012
GtkTextBuffer를 나타내는 위젯
조성호
shcho@gnome.org 2017-2019.

# TextView 위젯

"enter" 키를 누르면 줄이 바뀝니다.

"enter" 키를 더 누르면 기본 크기 창 안에 줄이 더 생기며, 창 크기를 넘으면서 수직 스크롤 표시줄이 나타납니다.

긴 문장을 적어넣으면 문장에 있는 단어 사이에서 줄바꿈이 일어납니다.

기이이이이이이이이이이이이이이이이이이인 단어가 있다면 수평 스크롤 표시줄이 나타납니다.

Gtk.TextView 예제입니다

/* This is the application. */ public class MyApplication : Gtk.Application { /* Override the 'activate' signal of GLib.Application. */ protected override void activate () { /* Create the window of this application. */ new MyWindow (this).show_all (); } }

/* This is the window. */ class MyWindow: Gtk.ApplicationWindow { internal MyWindow (MyApplication app) { Object (application: app, title: "TextView Example"); this.set_default_size (220, 200);

var buffer = new Gtk.TextBuffer (null); //stores text to be displayed var textview = new Gtk.TextView.with_buffer (buffer); //displays TextBuffer textview.set_wrap_mode (Gtk.WrapMode.WORD); //sets line wrapping

var scrolled_window = new Gtk.ScrolledWindow (null, null); scrolled_window.set_policy (Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC);

scrolled_window.add (textview); scrolled_window.set_border_width (5);

this.add (scrolled_window); } } /* main creates and runs the application. */ public int main (string[] args) { return new MyApplication ().run (args); }

이 예제는 다음 참고자료가 필요합니다:

Gtk.TextBuffer

Gtk.TextView

Gtk.ScrolledWindow

Gtk.WrapMode

Gtk.PolicyType