gtk GtkTextView 使用尝试
2014-01-11 15:14
204 查看
GtkTextView:代表了窗口中可见的文本框,用来显示GtkTextBuffer.
GtkTextBuffer:文本框正文的缓冲区,文本框文字的插入、删除都是对这一类变量进行操作。
GtkTextIter:保存文字在buffer中位置的结构。
GtkTextMark:A position in the buffer preserved across buffer modifications
GtkTextTag:用来给指定的文字添加一些标记,改变指定区域的文字的显示效果。如:字体的颜色、大小的改变。
GtkTextTagTable:是GtkTextTag标记的集合表。
GtkTextIter — Text buffer iterator
GtkTextTag
所有可以设置的tag 属性参见https://developer.gnome.org/gtk3/stable/GtkTextTag.html
...................例子
gtk_text_buffer_create_tag ()
例子:
GtkTextIter
gtk_text_buffer_get_iter_at_offset(buffer, &iter, 0); //获取并设置位置
gtk_text_buffer_insert(buffer, &iter, "Plain text\n", -1);
gtk_text_buffer_insert_with_tags_by_name(buffer, &iter, "Colored Text\n", -1, "blue_fg", "lmarg", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Text with colored background\n", -1, "lmarg", "gray_bg", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Text in italics\n", -1, "italic", "lmarg", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Bold text\n", -1, "bold", "lmarg", NULL);
应用指定的tag:
自定义主题
其他资料
各种颜色及名称:http://www.redocn.com/864236/blog/27837.html
GtkTextBuffer:文本框正文的缓冲区,文本框文字的插入、删除都是对这一类变量进行操作。
GtkTextIter:保存文字在buffer中位置的结构。
GtkTextMark:A position in the buffer preserved across buffer modifications
GtkTextTag:用来给指定的文字添加一些标记,改变指定区域的文字的显示效果。如:字体的颜色、大小的改变。
GtkTextTagTable:是GtkTextTag标记的集合表。
GtkTextIter — Text buffer iterator
GtkWidget *view; GtkTextBuffer *buffer; GtkTextIter start, end; GtkTextIter iter;
所有可以设置的tag 属性参见https://developer.gnome.org/gtk3/stable/GtkTextTag.html
"direction" GtkTextDirection : Read / Write "editable" gboolean : Read / Write "editable-set" gboolean : Read / Write "family" gchar* : Read / Write "family-set" gboolean : Read / Write "font" gchar* : Read / Write "font-desc" PangoFontDescription* : Read / Write "foreground" gchar* : Write "foreground-gdk" GdkColor* : Read / Write "foreground-rgba" GdkRGBA* : Read / Write "foreground-set" gboolean : Read / Write "indent" gint : Read / Write "indent-set" gboolean : Read / Write "invisible" gboolean : Read / Write "invisible-set" gboolean : Read / Write "justification" GtkJustification : Read / Write
...................例子
GdkRGBA rgba; rgba.red=(gdouble)0xFF/(gdouble)255;/*FF69B4*/ rgba.green=(gdouble)0x14/(gdouble)255;/*DeepPink FF93*/ rgba.blue=(gdouble)0x93/(gdouble)255; rgba.alpha=1; gtk_text_buffer_create_tag(textViewForSearchBuff, "深粉红", "foreground-rgba", &rgba, NULL);
buffer : | a GtkTextBuffer |
tag_name : | name of the new tag, or NULL. [allow-none] |
first_property_name : | name of first property to set, or NULL. [allow-none] |
... : | NULL-terminated list of property names and values |
Returns : | a new tag. [transfer none] |
gtk_text_buffer_create_tag(buffer, "gap","pixels_above_lines", 30, NULL); gtk_text_buffer_create_tag(buffer, "lmarg", "left_margin", 5, NULL); gtk_text_buffer_create_tag(buffer, "blue_fg", "foreground", "blue", NULL); gtk_text_buffer_create_tag(buffer, "gray_bg", "background", "gray", NULL); gtk_text_buffer_create_tag(buffer, "italic", "style", PANGO_STYLE_ITALIC, NULL); gtk_text_buffer_create_tag(buffer, "bold", "weight", PANGO_WEIGHT_BOLD, NULL);
gtk_text_buffer_get_iter_at_offset(buffer, &iter, 0); //获取并设置位置
gtk_text_buffer_insert(buffer, &iter, "Plain text\n", -1);
gtk_text_buffer_insert_with_tags_by_name(buffer, &iter, "Colored Text\n", -1, "blue_fg", "lmarg", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Text with colored background\n", -1, "lmarg", "gray_bg", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Text in italics\n", -1, "italic", "lmarg", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Bold text\n", -1, "bold", "lmarg", NULL);
应用指定的tag:
gtk_text_buffer_get_start_iter (textViewForSearchBuff,&start); gtk_text_buffer_get_end_iter (textViewForSearchBuff,&end); gtk_text_buffer_apply_tag_by_name(textViewForSearchBuff,"blue_fg",&start,&end);
各种颜色及名称:http://www.redocn.com/864236/blog/27837.html
相关文章推荐
- Android TextView结合SpannableString使用大全
- Android入门逆引手册 - 09 文本框(TextView)的使用
- 使用selector修改TextView中字体的颜色
- 使用代码为textview设置drawableLeft
- android中使用DatePickerDialog和AutoCompleteTextView简单使用
- Android UI设计之<六>使用HTML标签,实现在TextView中对部分文字进行加粗显示
- Android的常见控件(TextView、EditText、Button、Menu)使用
- AutoCompleteTextView的简单使用
- Android TextView使用HTML处理字体样式、显示图片等
- android:AutoCompleteTextView和MultAutoCompleteTextView的简单使用
- Android使用代码为textview设置drawableLeft
- Qt之QTableView显示富文本(使用了QAbstractTextDocumentLayout和QTextDocument)
- Android的TextView/EditText使用CharacterStyle&SpannableString来处理图片显示、字体样式、超链接等
- 使用代码为textview设置drawableLeft
- 使用VerticalRollingTextView实现单行文字垂直滚动
- Android UI中TextView的使用方法
- android 使用TextView/EditText应该注意的地方
- AutoCompleteTextView的简单使用
- TextView使用技巧
- 使用SpannableString类处理TextView中的字体