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

📄 gtk-signals.html

📁 该压缩包包含了GTK+的大量API函数
💻 HTML
📖 第 1 页 / 共 5 页
字号:
><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>name</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the signal name.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><ICLASS="EMPHASIS">Returns</I> :</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the recursion depth of emissions of this signal for thisobject.&#13;</TD></TR></TBODY></TABLE><P></P></DIV></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN8345"></A><H3><ANAME="GTK-SIGNAL-EMIT-STOP"></A>gtk_signal_emit_stop ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">void        gtk_signal_emit_stop            (<AHREF="gtkobject.html">GtkObject</A> *object,                                             <AHREF=../glib/glib-basic-types.html#GUINT>guint</A> signal_id);</PRE></TD></TR></TABLE><P>This function aborts a signal's current emission.</P><P>It will prevent the default method from running,if the signal was GTK_RUN_LAST and you connectednormally (i.e. without the "after" flag).</P><P>It will print a warning if used on a signal whichisn't being emitted.</P><DIVCLASS="INFORMALTABLE"><ANAME="AEN8355"></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>object</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the object whose signal handlers you wish to stop.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>signal_id</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the signal identifier, as returned by <AHREF="gtk-signals.html#GTK-SIGNAL-LOOKUP">gtk_signal_lookup</A>().&#13;</TD></TR></TBODY></TABLE><P></P></DIV></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN8369"></A><H3><ANAME="GTK-SIGNAL-EMIT-STOP-BY-NAME"></A>gtk_signal_emit_stop_by_name ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">void        gtk_signal_emit_stop_by_name    (<AHREF="gtkobject.html">GtkObject</A> *object,                                             const <AHREF=../glib/glib-basic-types.html#GCHAR>gchar</A> *name);</PRE></TD></TR></TABLE><P>This function aborts a signal's current emission.</P><P>It is just like<AHREF="gtk-signals.html#GTK-SIGNAL-EMIT-STOP">gtk_signal_emit_stop</A>()except it will lookup the signal id for you.</P><DIVCLASS="INFORMALTABLE"><ANAME="AEN8378"></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>object</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the object whose signal handlers you wish to stop.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>name</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the name of the signal you wish to stop.&#13;</TD></TR></TBODY></TABLE><P></P></DIV></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN8391"></A><H3><ANAME="GTK-SIGNAL-CONNECT"></A>gtk_signal_connect ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       gtk_signal_connect              (<AHREF="gtkobject.html">GtkObject</A> *object,                                             const <AHREF=../glib/glib-basic-types.html#GCHAR>gchar</A> *name,                                             <AHREF="gtk-types.html#GTKSIGNALFUNC">GtkSignalFunc</A> func,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> func_data);</PRE></TD></TR></TABLE><P>Attach a function pointer and user data to a signal fora particular object.</P><P>The GtkSignalFunction takes a <SPANCLASS="STRUCTNAME">GtkObject</SPAN> as its first parameter.It will be the same object as the one you're connectingthe hook to.  The func_data will be passed as the last parameterto the hook.</P><P>All else being equal, signal handlers are invoked in the order connected (see <AHREF="gtk-signals.html#GTK-SIGNAL-EMIT">gtk_signal_emit</A>() for the other details ofwhich order things are called in).</P><P>Here is how one passes an integer as user data,for when you just want to specify a constant intas parameter to your function:</P><DIVCLASS="INFORMALEXAMPLE"><ANAME="AEN8406"></A><P></P><TABLEBORDER="0"BGCOLOR="#D8F8D8"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">static void button_clicked_int(GtkButton* button, gpointer func_data){	g_print("button pressed: <TTCLASS="LITERAL">d</TT>\n", GPOINTER_TO_INT(func_data));}/* By calling this function, you will make the g_print above * execute, printing the number passed as `to_print'. */static void attach_print_signal(GtkButton* button, gint to_print){	gtk_signal_connect(GTK_OBJECT(button), "clicked",		GTK_SIGNAL_FUNC(button_clicked_int),		GINT_TO_POINTER(to_print));}</PRE></TD></TR></TABLE><P></P></DIV><DIVCLASS="INFORMALTABLE"><ANAME="AEN8409"></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>object</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the object associated with the signal, e.g. if a buttonis getting pressed, this is that button.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>name</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">name of the signal.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>func</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">function pointer to attach to the signal.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>func_data</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">value to pass as to your function (through the marshaller).</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><ICLASS="EMPHASIS">Returns</I> :</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the connection id.&#13;</TD></TR></TBODY></TABLE><P></P></DIV></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN8434"></A><H3><ANAME="GTK-SIGNAL-CONNECT-AFTER"></A>gtk_signal_connect_after ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       gtk_signal_connect_after        (<AHREF="gtkobject.html">GtkObject</A> *object,                                             const <AHREF=../glib/glib-basic-types.html#GCHAR>gchar</A> *name,                                             <AHREF="gtk-types.html#GTKSIGNALFUNC">GtkSignalFunc</A> func,                                             <AHREF=../glib/glib-basic-types.html#GPOINTER>gpointer</A> func_data);</PRE></TD></TR></TABLE><P>Attach a function pointer and user data to a signalso that this handler will be called after the other handlers.</P><DIVCLASS="INFORMALTABLE"><ANAME="AEN8444"></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>object</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the object associated with the signal.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>name</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">name of the signal.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>func</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">function pointer to attach to the signal.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>func_data</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">value to pass as to your function (through the marshaller).</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><ICLASS="EMPHASIS">Returns</I> :</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the unique identifier for this attachment:  the connection id.&#13;</TD></TR></TBODY></TABLE><P></P></DIV></DIV><HR><DIVCLASS="REFSECT2"><ANAME="AEN8469"></A><H3><ANAME="GTK-SIGNAL-CONNECT-OBJECT"></A>gtk_signal_connect_object ()</H3><TABLEBORDER="0"BGCOLOR="#D6E8FF"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING"><AHREF=../glib/glib-basic-types.html#GUINT>guint</A>       gtk_signal_connect_object       (<AHREF="gtkobject.html">GtkObject</A> *object,                                             const <AHREF=../glib/glib-basic-types.html#GCHAR>gchar</A> *name,                                             <AHREF="gtk-types.html#GTKSIGNALFUNC">GtkSignalFunc</A> func,                                             <AHREF="gtkobject.html">GtkObject</A> *slot_object);</PRE></TD></TR></TABLE><P>This function is for registering a callback that willcall another object's callback.  That is,instead of passing the object which is responsiblefor the event as the first parameter of the callback,it is switched with the user data (so the object which emitsthe signal will be the last parameter, which is where theuser data usually is).</P><P>This is useful for passing a standard function in as a callback.For example, if you wanted a button's press to <AHREF="gtkwidget.html#GTK-WIDGET-SHOW">gtk_widget_show</A>()some widget, you could write:</P><DIVCLASS="INFORMALEXAMPLE"><ANAME="AEN8481"></A><P></P><TABLEBORDER="0"BGCOLOR="#D8F8D8"WIDTH="100%"CELLPADDING="6"><TR><TD><PRECLASS="PROGRAMLISTING">gtk_signal_connect_object(button, "clicked", gtk_widget_show, window);</PRE></TD></TR></TABLE><P></P></DIV><DIVCLASS="INFORMALTABLE"><ANAME="AEN8483"></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>object</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the object which emits the signal.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>name</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the name of the signal.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>func</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the function to callback.</TD></TR><TR><TDWIDTH="20%"ALIGN="RIGHT"VALIGN="TOP"><TTCLASS="PARAMETER"><I>slot_object</I></TT>&nbsp;:</TD><TDWIDTH="80%"ALIGN="LEFT"VALIGN="TOP">the object to pass as the first parameter to func.(Though 

⌨️ 快捷键说明

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