⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gtk-general.html

📁 该压缩包包含了GTK+的大量API函数
💻 HTML
📖 第 1 页 / 共 5 页
字号:
<HTML><HEAD><TITLE>General</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.61"><LINKREL="HOME"TITLE="GTK+ Reference Manual"HREF="index.html"><LINKREL="UP"TITLE="GTK+ "HREF="gtk.html"><LINKREL="PREVIOUS"TITLE="GTK+ "HREF="gtk.html"><LINKREL="NEXT"TITLE="Version Information"HREF="gtk-feature-test-macros.html"></HEAD><BODYCLASS="REFENTRY"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#840084"ALINK="#0000FF"><DIVCLASS="NAVHEADER"><TABLEWIDTH="100%"BORDER="0"BGCOLOR="#000000"CELLPADDING="1"CELLSPACING="0"><TR><THCOLSPAN="4"ALIGN="center"><FONTCOLOR="#FFFFFF"SIZE="5">GTK+ Reference Manual</FONT></TH></TR><TR><TDWIDTH="25%"BGCOLOR="#C00000"ALIGN="left"><AHREF="gtk.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>&#60;&#60;&#60; Previous Page</B></FONT></A></TD><TDWIDTH="25%"BGCOLOR="#0000C0"ALIGN="center"><FONTCOLOR="#FFFFFF"SIZE="3"><B><AHREF="index.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>Home</B></FONT></A></B></FONT></TD><TDWIDTH="25%"BGCOLOR="#00C000"ALIGN="center"><FONTCOLOR="#FFFFFF"SIZE="3"><B><AHREF="gtk.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>Up</B></FONT></A></B></FONT></TD><TDWIDTH="25%"BGCOLOR="#C00000"ALIGN="right"><AHREF="gtk-feature-test-macros.html"><FONTCOLOR="#FFFFFF"SIZE="3"><B>Next Page &#62;&#62;&#62;</B></FONT></A></TD></TR></TABLE></DIV><H1><ANAME="GTK-GENERAL">General</A></H1><DIVCLASS="REFNAMEDIV"><ANAME="AEN27"></A><H2>Name</H2>General&nbsp;--&nbsp;Mainloop and event handling</DIV><DIVCLASS="REFSYNOPSISDIV"><ANAME="AEN30"></A><H2>Synopsis</H2><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="SYNOPSIS">&#13;#include &lt;gtk/gtk.h&gt;<AHREF=../glib/glib-basic-types.html#GCHAR>gchar</A>*      <AHREF="gtk-general.html#GTK-SET-LOCALE">gtk_set_locale</A>                  (void);void        <AHREF="gtk-general.html#GTK-INIT">gtk_init</A>                        (int *argc,                                             char ***argv);<AHREF=../glib/glib-basic-types.html#GBOOLEAN>gboolean</A>    <AHREF="gtk-general.html#GTK-INIT-CHECK">gtk_init_check</A>                  (int *argc,                                             char ***argv);void        <AHREF="gtk-general.html#GTK-EXIT">gtk_exit</A>                        (<AHREF=../glib/glib-basic-types.html#GINT>gint</A> error_code);<AHREF=../glib/glib-basic-types.html#GINT>gint</A>        <AHREF="gtk-general.html#GTK-EVENTS-PENDING">gtk_events_pending</A>              (void);void        <AHREF="gtk-general.html#GTK-MAIN">gtk_main</A>                        (void);<AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-MAIN-LEVEL">gtk_main_level</A>                  (void);void        <AHREF="gtk-general.html#GTK-MAIN-QUIT">gtk_main_quit</A>                   (void);<AHREF=../glib/glib-basic-types.html#GINT>gint</A>        <AHREF="gtk-general.html#GTK-MAIN-ITERATION">gtk_main_iteration</A>              (void);<AHREF=../glib/glib-basic-types.html#GINT>gint</A>        <AHREF="gtk-general.html#GTK-MAIN-ITERATION-DO">gtk_main_iteration_do</A>           (<AHREF=../glib/glib-basic-types.html#GBOOLEAN>gboolean</A> blocking);void        <AHREF="gtk-general.html#GTK-MAIN-DO-EVENT">gtk_main_do_event</A>               (<AHREF=../gdk/gdk-event-structures.html#GDKEVENT>GdkEvent</A> *event);void        (<AHREF="gtk-general.html#GTKMODULEINITFUNC">*GtkModuleInitFunc</A>)            (<AHREF=../glib/glib-basic-types.html#GINT>gint</A> *argc,                                             <AHREF=../glib/glib-basic-types.html#GCHAR>gchar</A> ***argv);<AHREF=../glib/glib-basic-types.html#GINT>gint</A>        <AHREF="gtk-general.html#GTK-TRUE">gtk_true</A>                        (void);<AHREF=../glib/glib-basic-types.html#GINT>gint</A>        <AHREF="gtk-general.html#GTK-FALSE">gtk_false</A>                       (void);void        <AHREF="gtk-general.html#GTK-GRAB-ADD">gtk_grab_add</A>                    (<AHREF="gtkwidget.html">GtkWidget</A> *widget);<AHREF="gtkwidget.html">GtkWidget</A>*  <AHREF="gtk-general.html#GTK-GRAB-GET-CURRENT">gtk_grab_get_current</A>            (void);void        <AHREF="gtk-general.html#GTK-GRAB-REMOVE">gtk_grab_remove</A>                 (<AHREF="gtkwidget.html">GtkWidget</A> *widget);void        <AHREF="gtk-general.html#GTK-INIT-ADD">gtk_init_add</A>                    (<AHREF="gtk-types.html#GTKFUNCTION">GtkFunction</A> function,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data);void        <AHREF="gtk-general.html#GTK-QUIT-ADD-DESTROY">gtk_quit_add_destroy</A>            (<AHREF=../glib/glib-basic-types.html#GUINT>guint</A> main_level,                                             <AHREF="gtkobject.html">GtkObject</A> *object);<AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-QUIT-ADD">gtk_quit_add</A>                    (<AHREF=../glib/glib-basic-types.html#GUINT>guint</A> main_level,                                             <AHREF="gtk-types.html#GTKFUNCTION">GtkFunction</A> function,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data);<AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-QUIT-ADD-FULL">gtk_quit_add_full</A>               (<AHREF=../glib/glib-basic-types.html#GUINT>guint</A> main_level,                                             <AHREF="gtk-types.html#GTKFUNCTION">GtkFunction</A> function,                                             <AHREF="gtk-types.html#GTKCALLBACKMARSHAL">GtkCallbackMarshal</A> marshal,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data,                                             <AHREF="gtk-types.html#GTKDESTROYNOTIFY">GtkDestroyNotify</A> destroy);void        <AHREF="gtk-general.html#GTK-QUIT-REMOVE">gtk_quit_remove</A>                 (<AHREF=../glib/glib-basic-types.html#GUINT>guint</A> quit_handler_id);void        <AHREF="gtk-general.html#GTK-QUIT-REMOVE-BY-DATA">gtk_quit_remove_by_data</A>         (<AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data);<AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-TIMEOUT-ADD-FULL">gtk_timeout_add_full</A>            (<AHREF=../glib/glib-basic-types.html#GUINT32>guint32</A> interval,                                             <AHREF="gtk-types.html#GTKFUNCTION">GtkFunction</A> function,                                             <AHREF="gtk-types.html#GTKCALLBACKMARSHAL">GtkCallbackMarshal</A> marshal,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data,                                             <AHREF="gtk-types.html#GTKDESTROYNOTIFY">GtkDestroyNotify</A> destroy);<AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-TIMEOUT-ADD">gtk_timeout_add</A>                 (<AHREF=../glib/glib-basic-types.html#GUINT32>guint32</A> interval,                                             <AHREF="gtk-types.html#GTKFUNCTION">GtkFunction</A> function,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data);void        <AHREF="gtk-general.html#GTK-TIMEOUT-REMOVE">gtk_timeout_remove</A>              (<AHREF=../glib/glib-basic-types.html#GUINT>guint</A> timeout_handler_id);<AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-IDLE-ADD">gtk_idle_add</A>                    (<AHREF="gtk-types.html#GTKFUNCTION">GtkFunction</A> function,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data);<AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-IDLE-ADD-PRIORITY">gtk_idle_add_priority</A>           (<AHREF=../glib/glib-basic-types.html#GINT>gint</A> priority,                                             <AHREF="gtk-types.html#GTKFUNCTION">GtkFunction</A> function,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data);<AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-IDLE-ADD-FULL">gtk_idle_add_full</A>               (<AHREF=../glib/glib-basic-types.html#GINT>gint</A> priority,                                             <AHREF="gtk-types.html#GTKFUNCTION">GtkFunction</A> function,                                             <AHREF="gtk-types.html#GTKCALLBACKMARSHAL">GtkCallbackMarshal</A> marshal,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data,                                             <AHREF="gtk-types.html#GTKDESTROYNOTIFY">GtkDestroyNotify</A> destroy);void        <AHREF="gtk-general.html#GTK-IDLE-REMOVE">gtk_idle_remove</A>                 (<AHREF=../glib/glib-basic-types.html#GUINT>guint</A> idle_handler_id);void        <AHREF="gtk-general.html#GTK-IDLE-REMOVE-BY-DATA">gtk_idle_remove_by_data</A>         (<AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data);<AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-INPUT-ADD-FULL">gtk_input_add_full</A>              (<AHREF=../glib/glib-basic-types.html#GINT>gint</A> source,                                             <AHREF=../gdk/gdk-input.html#GDKINPUTCONDITION>GdkInputCondition</A> condition,                                             <AHREF=../gdk/gdk-input.html#GDKINPUTFUNCTION>GdkInputFunction</A> function,                                             <AHREF="gtk-types.html#GTKCALLBACKMARSHAL">GtkCallbackMarshal</A> marshal,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> data,                                             <AHREF="gtk-types.html#GTKDESTROYNOTIFY">GtkDestroyNotify</A> destroy);void        <AHREF="gtk-general.html#GTK-INPUT-REMOVE">gtk_input_remove</A>                (<AHREF=../glib/glib-basic-types.html#GUINT>guint</A> input_handler_id);#define     <AHREF="gtk-general.html#GTK-PRIORITY-REDRAW-CAPS">GTK_PRIORITY_REDRAW</A>#define     <AHREF="gtk-general.html#GTK-PRIORITY-RESIZE-CAPS">GTK_PRIORITY_RESIZE</A>#define     <AHREF="gtk-general.html#GTK-PRIORITY-HIGH-CAPS">GTK_PRIORITY_HIGH</A>#define     <AHREF="gtk-general.html#GTK-PRIORITY-INTERNAL-CAPS">GTK_PRIORITY_INTERNAL</A>#define     <AHREF="gtk-general.html#GTK-PRIORITY-DEFAULT-CAPS">GTK_PRIORITY_DEFAULT</A>#define     <AHREF="gtk-general.html#GTK-PRIORITY-LOW-CAPS">GTK_PRIORITY_LOW</A><AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       <AHREF="gtk-general.html#GTK-KEY-SNOOPER-INSTALL">gtk_key_snooper_install</A>         (<AHREF="gtk-general.html#GTKKEYSNOOPFUNC">GtkKeySnoopFunc</A> snooper,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> func_data);<AHREF=../glib/glib-basic-types.html#GINT>gint</A>        (<AHREF="gtk-general.html#GTKKEYSNOOPFUNC">*GtkKeySnoopFunc</A>)              (<AHREF="gtkwidget.html">GtkWidget</A> *grab_widget,                                             <AHREF=../gdk/gdk-event-structures.html#GDKEVENTKEY>GdkEventKey</A> *event,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> func_data);void        <AHREF="gtk-general.html#GTK-KEY-SNOOPER-REMOVE">gtk_key_snooper_remove</A>          (<AHREF=../glib/glib-basic-types.html#GUINT>guint</A> snooper_handler_id);<AHREF=../gdk/gdk-event-structures.html#GDKEVENT>GdkEvent</A>*   <AHREF="gtk-general.html#GTK-GET-CURRENT-EVENT">gtk_get_current_event</A>           (void);<AHREF="gtkwidget.html">GtkWidget</A>*  <AHREF="gtk-general.html#GTK-GET-EVENT-WIDGET">gtk_get_event_widget</A>            (<AHREF=../gdk/gdk-event-structures.html#GDKEVENT>GdkEvent</A> *event);void        <AHREF="gtk-general.html#GTK-PROPAGATE-EVENT">gtk_propagate_event</A>             (<AHREF="gtkwidget.html">GtkWidget</A> *widget,                                             <AHREF=../gdk/gdk-event-structures.html#GDKEVENT>GdkEvent</A> *event);</PRE></TD></TR></TABLE></DIV><DIVCLASS="REFSECT1"><ANAME="AEN157"></A><H2>Description</H2><P>GTK uses an event oriented programming model. While conventional C programshave control over the program flow all the time this does not apply to applications written using GTK. Instead you set up some objects and register some functions (<SPANCLASS="QUOTE">"callbacks"</SPAN>) to be called whenever some event occurs and give control to the GTK mainloop (e.g. by calling gtk_main).</P><DIVCLASS="EXAMPLE"><ANAME="AEN161"></A><P><B>Example 1.  Typical <TTCLASS="FUNCTION">main</TT> function for a GTK application</B></P><TABLEBORDER="0"BGCOLOR="#D8F8D8"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">int main (int argc, char **argv){  /* Initialize i18n support */  <AHREF="gtk-general.html#GTK-SET-LOCALE">gtk_set_locale</A>();  /* Initialize the widget set */  gtk_init (&amp;argc, &amp;argv);  /* Create the main window */  mainwin = gtk_window_new (GTK_WINDOW_TOPLEVEL);  /* Set up our GUI elements */  ...  /* Show the application window */  gtk_widget_showall (mainwin);  /* Let the user interact with our application */  <AHREF="gtk-general.html#GTK-MAIN">gtk_main</A>();  /* The user lost interest */  gtk_exit (0);}</PRE></TD></TR></TABLE></DIV></DIV><DIVCLASS="REFSECT1"><ANAME="AEN167"></A><H2>Details</H2><DIVCLASS="REFSECT2"><ANAME="AEN169"></A><H3><ANAME="GTK-SET-LOCALE"></A>gtk_set_locale ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF=../glib/glib-basic-types.html#GCHAR>gchar</A>*      gtk_set_locale                  (void);</PRE></TD></TR></TABLE><P>Sets the current locale according to the program environment. This is the same as calling the libc function setlocale(LC_ALL, "") but also takes care of the locale specific setup of the windowing system used by GDK.</P><P> You should call this function before <TTCLASS="FUNCTION">gtk_init</TT> to support internationalization of your GTK+ applications.</P><DIVCLASS="INFORMALTABLE"><ANAME="AEN177"></A><P></P><TABLEBORDER="0"WIDTH="100%"BGCOLOR="#FFD0D0"CELLSPACING="0"CELLPADDING="4"CLASS="CALSTABLE"><TBODY><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><ICLASS="EMPHASIS">Returns</I> :</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">A string corresponding to the locale set. &#13;</TD></TR></TBODY></TABLE><P></P></DIV></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN186"></A><H3><ANAME="GTK-INIT"></A>gtk_init ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">void        gtk_init                        (int *argc,                                             char ***argv);</PRE></TD></TR></TABLE><P>Call this function before using any other GTK functions in your GUIapplications.  It will initialize everything needed to operate the toolkit andparses some standard command line options. <TTCLASS="PARAMETER"><I>argc</I></TT> and <TTCLASS="PARAMETER"><I>argv</I></TT> are adjusted accordingly so your own code will never see those standard arguments.</P><DIVCLASS="NOTE"><BLOCKQUOTECLASS="NOTE"><P><B>Note: </B>This function will terminate your program if it was unable to initialize the GUI for some reason. If you want your program to fall back to a textual interface you want to call <TTCLASS="FUNCTION">gtk_init_check</TT> instead.</P></BLOCKQUOTE></DIV><DIVCLASS="INFORMALTABLE"><ANAME="AEN196"></A><P></P><TABLEBORDER="0"WIDTH="100%"BGCOLOR="#FFD0D0"CELLSPACING="0"CELLPADDING="4"CLASS="CALSTABLE"><TBODY><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>argc</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">Address of the <TTCLASS="PARAMETER"><I>argc</I></TT> parameter of your <TTCLASS="FUNCTION">main</TT> function. Changed if any arguments were handled.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>argv</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">Address of the <TTCLASS="PARAMETER"><I>argv</I></TT> parameter of <TTCLASS="FUNCTION">main</TT>. Any parameters understood by <TTCLASS="FUNCTION">gtk_init</TT> are stripped before return.&#13;</TD></TR></TBODY></TABLE><P></P></DIV></DIV><HR><DIVCLASS="REFSECT2"><A

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -