亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? question_index.sgml

?? linux下電話本所依賴的一些圖形庫
?? SGML
?? 第 1 頁 / 共 3 頁
字號:
<refentry id="gtk-question-index" revision="1 Jan 2002"><refmeta><refentrytitle>Common Questions</refentrytitle><manvolnum>3</manvolnum><refmiscinfo>Common Questions</refmiscinfo></refmeta><refnamediv><refname>Common Questions</refname><refpurpose>Find answers to common questions in the GTK+ manual</refpurpose></refnamediv><refsect1><title>Questions and Answers</title><para>This is an "index" of the reference manual organized by common "How doI..." questions. If you aren't sure which documentation to read forthe question you have, this list is a good place to start.</para><qandaset><qandadiv><title>General</title><qandaentry><question><para>How do I get started with GTK+?</para></question><answer><para>The GTK+ <ulink url="http://www.gtk.org">website</ulink> offers a <ulink url="http://www.gtk.org/tutorial">tutorial</ulink> and a <ulink url="http://www.gtk.org/faq">FAQ</ulink>. More documentation rangingfrom whitepapers to online books can be found at the<ulink url="http://developer.gnome.org/doc">GNOME developer's site</ulink>.After studying these materials you should be well prepared to come back tothis reference manual for details.</para></answer></qandaentry><qandaentry><question><para>Where can I get help with GTK+, submit a bug report, or make a feature request?</para></question><answer><para>See the <link linkend="gtk-resources">documentation on this topic</link>.</para></answer></qandaentry><qandaentry><question><para>How do I port from one GTK+version to another?</para></question><answer><para>See the <link linkend="gtk-changes-2-0">list of incompatible changesfrom 1.2 to 2.0</link>. Also, the <ulinkurl="http://developer.gnome.org/dotplan/porting/">GNOME 2.0 portingguide</ulink> on <ulinkurl="http://developer.gnome.org">http://developer.gnome.org</ulink>has some more detailed discussion of porting from 1.2 to 2.0.You may also find useful information in the documentation for specific widgets and functions.</para><para>If you have a question not covered in the manual, feel free toask on the mailing lists and please <ulinkurl="http://bugzilla.gnome.org">file a bug report</ulink> against thedocumentation.</para></answer></qandaentry><qandaentry><question><para>How does memory management work in GTK+? Should I free data returnedfrom functions?</para></question><answer><para>See the documentation for <link linkend="GObject">GObject</link> and<link linkend="GtkObject">GtkObject</link>. For <linklinkend="GObject">GObject</link> note specifically <linklinkend="g-object-ref">g_object_ref()</link> and <linklinkend="g-object-unref">g_object_unref()</link>. <linklinkend="GtkObject">GtkObject</link> is a subclass of <linklinkend="GObject">GObject</link> so the same points apply, except thatit has a "floating" state (explained in its documentation).</para><para>For strings returned from functions, they will be declared "const"(using <link linkend="G-CONST-RETURN-CAPS">G_CONST_RETURN</link>) if theyshould not be freed. Non-const strings should be freed with <linklinkend="g-free">g_free()</link>. Arrays follow the same rule.  (Ifyou find an exception to the rules, please report a bug to <ulinkurl="http://bugzilla.gnome.org">http://bugzilla.gnome.org</ulink>.)</para></answer></qandaentry><qandaentry><question><para>Why does my program leak memory, if I destroy a widget immediately after creating it ?</para></question><answer><para>If <structname>GtkFoo</structname> isn't a toplevel window, then<informalexample><programlisting> foo = gtk_foo_new (<!-- -->); gtk_widget_destroy (foo);</programlisting></informalexample>is a memory leak, because no one assumed the initial floating reference. If you are using a widget and you aren't immediately packing it into a container, then you probably want standard reference counting, not floating reference counting.</para><para>To to get this, you must acquire a reference to the widget and drop the floating reference (<quote>ref and sink</quote> in GTK+ parlance) after creating it:<informalexample><programlisting> foo = gtk_foo_new (<!-- -->); g_object_ref (foo);  gtk_object_sink (GTK_OBJECT (foo));</programlisting></informalexample>When you want to get rid of the widget, you must call gtk_widget_destroy()to break any external connections to the widget before dropping your reference:<informalexample><programlisting> gtk_widget_destroy (foo);  g_object_unref (foo); </programlisting></informalexample>When you immediately add a widget to a container, it takes care ofassuming the initial floating reference and you don't have to worryabout reference counting at all ... just call gtk_widget_destroy()to get rid of the widget.</para></answer></qandaentry><qandaentry><question><para>How do I use GTK+ with threads?</para></question><answer><para>This is covered in the <link linkend="gdk-Threads">GDK threads documentation</link>. See also the <link linkend="glib-Threads">GThread</link> documentation for portablethreading primitives.</para></answer></qandaentry><qandaentry><question><para>How do I internationalize a GTK+ program?</para></question><answer><para>Most people use <ulink url="http://www.gnu.org/software/gettext/">GNUgettext</ulink>, already required in order to install GLib. On a UNIXor Linux system with gettext installed, type <literal>infogettext</literal> to read the documentation.</para><para>The short checklist on how to use gettext is: call<function>bindtextdomain()</function> so gettext can find the filescontaining your translations, call <function>textdomain()</function>to set the default translation domain, then call<function>gettext()</function> to look up each string to be translatedin the default domain. Conventionally, people define macros asfollows for convenience:<informalexample><programlisting>  #define  _(x)  gettext (x)  #define N_(x)  x</programlisting></informalexample>You use <function>N_()</function> (N stands for no-op) to mark a string for translation in a context where a function call to <function>gettext()</function> is not allowed, such as in an array initializer. You eventually have to call<function>gettext()</function> on the string to actually fetch thetranslation.  <function>_()</function> both marks the string for translation and actually translates it.</para><para>Code using these macros ends up looking like this:<informalexample><programlisting> #include &lt;libintl.h&gt; #define  _(x)  gettext (x) #define N_(x)  x static const char *global_variable = N_("Translate this string"); static void make_widgets (void) {    GtkWidget *label1;    GtkWidget *label2;    label1 = gtk_label_new (_("Another string to translate"));    label2 = gtk_label_new (_(global_variable));...</programlisting></informalexample></para><para>Libraries using gettext should use <function>dgettext()</function>instead of <function>gettext()</function>, which allowsthem to specify the translation domain each time they ask for a translation. Libraries should also avoid calling <function>textdomain()</function>, since they'll be specifying the domain instead of using the default.For <function>dgettext()</function> the <function>_()</function> macrocan be defined as:<informalexample><programlisting>  #define _(x) dgettext ("MyDomain", x)</programlisting></informalexample></para></answer></qandaentry><qandaentry><question><para>How do I use non-ASCII characters in GTK+ programs ?</para></question><answer><para>GTK+ uses <ulink url="http://www.unicode.org">Unicode</ulink> (more exactly UTF-8) for all text. UTF-8 encodes each Unicode codepoint as a	      sequence of one to six bytes and has a number of nice	      properties which make it a good choice for working with Unicode	      text in C programs:<itemizedlist><listitem><para>ASCII characters are encoded by their familiar ASCII codepoints.</para></listitem><listitem><para>ASCII characters never appear as part of any other character.</para></listitem><listitem><para>The zero byte doesn't occur as part of a character, so that UTF-8 strings can		    be manipulated with the usual C library functions for		    handling zero-terminated strings.</para></listitem></itemizedlist>More information about Unicode and UTF-8 can be found in the <ulink url="http://www.cl.cam.ac.uk/~mgk25/unicode.html">UTF-8 and Unicode FAQ for Unix/Linux</ulink>.GLib provides functions for converting strings between UTF-8 and other	      encodings, see <link linkend="g-locale-to-utf8">g_locale_to_utf8()</link> and <link		linkend="g-convert">g_convert()</link>.</para><para>Text coming from external sources (e.g. files or user input), has to be	      converted to UTF-8 before being handed over to GTK+. The	      following example writes the content of a IS0-8859-1 encoded text	      file to <literal>stdout</literal>:<informalexample><programlisting>gchar *text, *utf8_text;gsize length;GError *error = NULL;if (g_file_get_contents (filename, &amp;text, &amp;length, NULL))   {     utf8_text = g_convert (text, length, "UTF-8", "ISO-8859-1",                             NULL, NULL, &amp;error);     if (error != NULL)       {         fprintf ("Couldn't convert file &percnt;s to UTF-8\n", filename);         g_error_free (error);       }     else       g_print (utf8_text);  }else   fprintf (stderr, "Unable to read file &percnt;s\n", filename);</programlisting></informalexample></para><para>For string literals in the source code, there are several alternatives for	      handling non-ASCII content:<variablelist><varlistentry><term>direct UTF-8</term><listitem><para>If your editor and compiler are capable of handling UTF-8 encoded sources,it is very convenient to simply use UTF-8 for string literals, since it allowsyou to edit the strings in "wysiwyg". Note that choosing this option may 

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线看日本不卡| 成人av免费在线播放| 制服丝袜中文字幕一区| 婷婷中文字幕一区三区| 777奇米成人网| 狠狠色综合播放一区二区| 久久网站热最新地址| 高清国产一区二区三区| 亚洲欧美一区二区久久| 欧美日韩一区在线观看| 麻豆久久久久久| 久久久久青草大香线综合精品| 成人性生交大片免费看视频在线| 中文字幕一区二区三区乱码在线| 欧美性受xxxx黑人xyx性爽| 日本在线播放一区二区三区| 久久婷婷综合激情| 色网站国产精品| 青青草一区二区三区| 久久午夜羞羞影院免费观看| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 91香蕉视频黄| 肉丝袜脚交视频一区二区| 亚洲精品一区二区三区蜜桃下载| 成人精品在线视频观看| 午夜电影一区二区| 国产精品你懂的在线欣赏| 欧美日韩亚洲综合在线| 国产东北露脸精品视频| 亚洲一区日韩精品中文字幕| 久久夜色精品国产欧美乱极品| 91在线视频官网| 蜜臀国产一区二区三区在线播放| 国产亲近乱来精品视频| 欧美日本不卡视频| 成人深夜福利app| 日本不卡一区二区三区高清视频| 国产精品久久久久影院色老大| 欧美另类z0zxhd电影| 成人高清视频在线| 久久成人18免费观看| 亚洲永久精品大片| 国产精品色噜噜| 精品国产电影一区二区| 欧美亚洲一区二区在线| 波多野结衣亚洲一区| 精品一区二区三区免费毛片爱 | 日本成人中文字幕| 国产午夜亚洲精品理论片色戒| 一本大道久久精品懂色aⅴ| 国精产品一区一区三区mba桃花 | 狠狠色丁香婷婷综合| 亚洲曰韩产成在线| 国产精品久久久久9999吃药| 欧美精品一区二区不卡 | 欧美aaaaa成人免费观看视频| 亚洲精品国产成人久久av盗摄| 欧美国产欧美亚州国产日韩mv天天看完整 | 国产91丝袜在线18| 伊人性伊人情综合网| 久久精品人人做人人爽人人| 欧美一级欧美三级| 欧美日韩国产成人在线免费| 色综合网站在线| 99精品黄色片免费大全| 国产精品自产自拍| 韩国一区二区三区| 极品美女销魂一区二区三区| 视频一区二区中文字幕| 日韩精品一级中文字幕精品视频免费观看| 综合电影一区二区三区 | 亚洲成人免费影院| 一区二区成人在线视频 | 欧美少妇一区二区| 在线视频国产一区| 欧美色窝79yyyycom| 91丝袜高跟美女视频| 色婷婷精品大在线视频 | 亚洲chinese男男1069| 一区二区高清免费观看影视大全 | 国产精品色哟哟| 国产精品久久免费看| 1024精品合集| 亚洲影视资源网| 亚洲成人自拍一区| 蜜臀精品久久久久久蜜臀| 加勒比av一区二区| 懂色av中文字幕一区二区三区| 国产 欧美在线| 99久久综合精品| 日本黄色一区二区| 欧美日本一区二区三区| 欧美电影免费观看高清完整版在线观看 | 精品一二三四在线| 国产精品自拍网站| 91在线一区二区三区| 欧美日韩精品一区二区在线播放| 欧美另类高清zo欧美| xnxx国产精品| 亚洲桃色在线一区| 午夜精品久久久久影视| 久草这里只有精品视频| 成人免费视频app| 欧美最新大片在线看| 日韩一区二区三区三四区视频在线观看| 日韩精品在线网站| 国产精品私人自拍| 亚洲aⅴ怡春院| 国产伦精品一区二区三区免费| 99精品热视频| 91精品国产一区二区| 国产欧美1区2区3区| 亚洲综合激情网| 国产精品影视在线观看| 欧美最新大片在线看| 久久久精品国产免大香伊| 亚洲一区在线视频| 国产麻豆成人精品| 欧美日本高清视频在线观看| 久久久久9999亚洲精品| 亚洲va欧美va人人爽| 国产91精品久久久久久久网曝门 | 97精品视频在线观看自产线路二| 欧美日本乱大交xxxxx| 国产欧美日韩一区二区三区在线观看 | 欧美日韩亚洲综合一区 | 亚洲精品你懂的| 国产一区在线观看麻豆| 欧美视频一区二区| 中文字幕中文字幕一区二区| 久久精品国产亚洲aⅴ| 91免费版在线看| 久久一日本道色综合| 天天综合网 天天综合色| www.视频一区| 2020国产精品自拍| 午夜精品久久久久| 99精品国产91久久久久久| 2019国产精品| 日韩精品视频网站| 欧美午夜片在线观看| 亚洲人妖av一区二区| 成人久久久精品乱码一区二区三区| 日韩欧美亚洲国产另类 | 精品在线播放免费| 欧美日韩成人激情| 亚洲欧美日韩在线不卡| 盗摄精品av一区二区三区| 日韩精品一区二区三区中文精品| 亚洲五码中文字幕| 日本韩国精品在线| 国产精品电影一区二区| 成人小视频在线观看| 久久久精品影视| 国产大陆a不卡| 26uuu精品一区二区| 久久超碰97人人做人人爱| 日韩一区二区视频| 欧美aⅴ一区二区三区视频| 欧美精品一二三区| 日本不卡中文字幕| 91精品国产欧美一区二区18| 午夜精品久久久久久久久| 欧美日韩国产三级| 石原莉奈在线亚洲二区| 欧美一卡2卡三卡4卡5免费| 日韩电影在线免费看| 欧美一区二区三区四区视频| 日韩av电影免费观看高清完整版| 欧美乱妇15p| 免费欧美高清视频| 久久香蕉国产线看观看99| 国产成人精品综合在线观看| 国产精品视频看| 91污在线观看| 亚洲bdsm女犯bdsm网站| 欧美一区二区三区思思人| 激情综合色丁香一区二区| 久久久久九九视频| a亚洲天堂av| 亚洲一区欧美一区| 欧美一区二区免费视频| 九色|91porny| 一区视频在线播放| 欧美在线观看你懂的| 免费在线看一区| 日本一区二区三区久久久久久久久不| 成人性生交大片免费看中文 | 在线成人午夜影院| 麻豆免费精品视频| 国产精品免费视频网站| 欧美中文字幕不卡| 极品少妇一区二区| 亚洲人成网站在线| 日韩一区二区三区在线| 成人免费毛片片v| 日日嗨av一区二区三区四区| 精品少妇一区二区三区日产乱码| 成人av资源下载| 一区二区免费在线播放|