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

📄 gtk-gtktreeview-drag-and-drop.html

📁 最新gtk中文资料集
💻 HTML
📖 第 1 页 / 共 3 页
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"><title>GtkTreeView drag-and-drop</title><meta name="generator" content="DocBook XSL Stylesheets V1.73.2"><link rel="start" href="index.html" title="GTK+ Reference Manual"><link rel="up" href="TreeWidgetObjects.html" title="Tree, List and Icon Grid Widgets"><link rel="prev" href="GtkTreeView.html" title="GtkTreeView"><link rel="next" href="GtkCellView.html" title="GtkCellView"><meta name="generator" content="GTK-Doc V1.9 (XML mode)"><link rel="stylesheet" href="style.css" type="text/css"><link rel="part" href="gtk.html" title="Part&#160;I.&#160;GTK+ Overview"><link rel="part" href="gtkbase.html" title="Part&#160;II.&#160;GTK+ Core Reference"><link rel="part" href="gtkobjects.html" title="Part&#160;III.&#160;GTK+ Widgets and Objects"><link rel="chapter" href="ch01.html" title="Object Hierarchy"><link rel="chapter" href="ch02.html" title="Widget Gallery"><link rel="chapter" href="WindowWidgets.html" title="Windows"><link rel="chapter" href="DisplayWidgets.html" title="Display Widgets"><link rel="chapter" href="ButtonWidgets.html" title="Buttons and Toggles"><link rel="chapter" href="NumericEntry.html" title="Numeric/Text Data Entry"><link rel="chapter" href="TextWidgetObjects.html" title="Multiline Text Editor"><link rel="chapter" href="TreeWidgetObjects.html" title="Tree, List and Icon Grid Widgets"><link rel="chapter" href="MenusAndCombos.html" title="Menus, Combo Box, Toolbar"><link rel="chapter" href="Actions.html" title="Action-based menus and toolbars"><link rel="chapter" href="SelectorWidgets.html" title="Selectors (File/Font/Color/Input Devices)"><link rel="chapter" href="LayoutContainers.html" title="Layout Containers"><link rel="chapter" href="Ornaments.html" title="Ornaments"><link rel="chapter" href="ScrollingWidgets.html" title="Scrolling"><link rel="chapter" href="Printing.html" title="Printing"><link rel="chapter" href="MiscObjects.html" title="Miscellaneous"><link rel="chapter" href="AbstractObjects.html" title="Abstract Base Classes"><link rel="chapter" href="PlugSocket.html" title="Cross-process Embedding"><link rel="chapter" href="SpecialObjects.html" title="Special-purpose features"><link rel="chapter" href="RecentDocuments.html" title="Recently Used Documents"><link rel="chapter" href="Builder.html" title="Interface builder"><link rel="chapter" href="DeprecatedObjects.html" title="Deprecated"><link rel="part" href="migrating.html" title="Part&#160;IV.&#160;Migrating from Previous Versions of GTK+"><link rel="chapter" href="gtk-migrating-checklist.html" title="Migration Checklist"><link rel="chapter" href="gtk-migrating-GtkFileChooser.html" title="Migrating from GtkFileSelection to GtkFileChooser"><link rel="chapter" href="gtk-migrating-GtkAction.html" title="Migrating from old menu and toolbar systems to GtkAction"><link rel="chapter" href="gtk-migrating-GtkComboBox.html" title="Migrating from GtkOptionMenu and GtkCombo to GtkComboBox and GtkComboBoxEntry"><link rel="chapter" href="gtk-migrating-GtkIconView.html" title="Migrating from GnomeIconList to GtkIconView"><link rel="chapter" href="gtk-migrating-GtkAboutDialog.html" title="Migrating from GnomeAbout to GtkAboutDialog"><link rel="chapter" href="gtk-migrating-GtkColorButton.html" title="Migrating from GnomeColorPicker to GtkColorButton"><link rel="chapter" href="gtk-migrating-GtkAssistant.html" title="Migrating from GnomeDruid to GtkAssistant"><link rel="chapter" href="gtk-migrating-GtkRecentChooser.html" title="Migrating from EggRecent to GtkRecentChooser"><link rel="chapter" href="gtk-migrating-GtkLinkButton.html" title="Migrating from GnomeHRef to GtkLinkButton"><link rel="chapter" href="gtk-migrating-GtkBuilder.html" title="Migrating from libglade to GtkBuilder"><link rel="chapter" href="gtk-migrating-tooltips.html" title="Migrating from GtkTooltips to GtkTooltip"><link rel="part" href="pt05.html" title="Part&#160;V.&#160;GTK+ Tools"><link rel="glossary" href="glossary.html" title="Glossary"><link rel="index" href="ix01.html" title="Index"><link rel="index" href="ix02.html" title="Index of deprecated symbols"><link rel="index" href="ix03.html" title="Index of new symbols in 2.2"><link rel="index" href="ix04.html" title="Index of new symbols in 2.4"><link rel="index" href="ix05.html" title="Index of new symbols in 2.6"><link rel="index" href="ix06.html" title="Index of new symbols in 2.8"><link rel="index" href="ix07.html" title="Index of new symbols in 2.10"><link rel="index" href="ix08.html" title="Index of new symbols in 2.12"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="GtkTreeView.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td><td><a accesskey="u" href="TreeWidgetObjects.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td><th width="100%" align="center">GTK+ Reference Manual</th><td><a accesskey="n" href="GtkCellView.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td></tr><tr><td colspan="5" class="shortcuts"><nobr><a href="#id3769449" class="shortcut">Top</a>                  &#160;|&#160;                  <a href="#id3769874" class="shortcut">Description</a>                  &#160;|&#160;                  <a href="#id3769774" class="shortcut">Object Hierarchy</a>                  &#160;|&#160;                  <a href="#id3769811" class="shortcut">Known Implementations</a></nobr></td></tr></table><div class="refentry" lang="en"><a name="gtk-GtkTreeView-drag-and-drop"></a><div class="titlepage"></div><div class="refnamediv"><table width="100%"><tr><td valign="top"><h2><a name="id3769449"></a><span class="refentrytitle">GtkTreeView drag-and-drop</span></h2><p>GtkTreeView drag-and-drop &#8212; Interfaces for drag-and-drop support in GtkTreeView</p></td><td valign="top" align="right"></td></tr></table></div><div class="refsynopsisdiv"><h2>Synopsis</h2><a name="GtkTreeDragSource"></a><a name="GtkTreeDragDest"></a><pre class="synopsis">#include &lt;gtk/gtk.h&gt;                    <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragSource-struct">GtkTreeDragSource</a>;                    <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragSourceIface">GtkTreeDragSourceIface</a>;<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a>            <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#gtk-tree-drag-source-drag-data-delete">gtk_tree_drag_source_drag_data_delete</a>                                                        (<a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragSource">GtkTreeDragSource</a> *drag_source,                                                         <a class="link" href="GtkTreeModel.html#GtkTreePath">GtkTreePath</a> *path);<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a>            <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#gtk-tree-drag-source-drag-data-get">gtk_tree_drag_source_drag_data_get</a>  (<a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragSource">GtkTreeDragSource</a> *drag_source,                                                         <a class="link" href="GtkTreeModel.html#GtkTreePath">GtkTreePath</a> *path,                                                         <a class="link" href="GtkWidget.html#GtkSelectionData">GtkSelectionData</a> *selection_data);<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a>            <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#gtk-tree-drag-source-row-draggable">gtk_tree_drag_source_row_draggable</a>  (<a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragSource">GtkTreeDragSource</a> *drag_source,                                                         <a class="link" href="GtkTreeModel.html#GtkTreePath">GtkTreePath</a> *path);                    <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragDest-struct">GtkTreeDragDest</a>;                    <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragDestIface">GtkTreeDragDestIface</a>;<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a>            <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#gtk-tree-drag-dest-drag-data-received">gtk_tree_drag_dest_drag_data_received</a>                                                        (<a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragDest">GtkTreeDragDest</a> *drag_dest,                                                         <a class="link" href="GtkTreeModel.html#GtkTreePath">GtkTreePath</a> *dest,                                                         <a class="link" href="GtkWidget.html#GtkSelectionData">GtkSelectionData</a> *selection_data);<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a>            <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#gtk-tree-drag-dest-row-drop-possible">gtk_tree_drag_dest_row_drop_possible</a>                                                        (<a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragDest">GtkTreeDragDest</a> *drag_dest,                                                         <a class="link" href="GtkTreeModel.html#GtkTreePath">GtkTreePath</a> *dest_path,                                                         <a class="link" href="GtkWidget.html#GtkSelectionData">GtkSelectionData</a> *selection_data);<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a>            <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#gtk-tree-set-row-drag-data">gtk_tree_set_row_drag_data</a>          (<a class="link" href="GtkWidget.html#GtkSelectionData">GtkSelectionData</a> *selection_data,                                                         <a class="link" href="GtkTreeModel.html" title="GtkTreeModel">GtkTreeModel</a> *tree_model,                                                         <a class="link" href="GtkTreeModel.html#GtkTreePath">GtkTreePath</a> *path);<ahref="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean">gboolean</a>            <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#gtk-tree-get-row-drag-data">gtk_tree_get_row_drag_data</a>          (<a class="link" href="GtkWidget.html#GtkSelectionData">GtkSelectionData</a> *selection_data,                                                         <a class="link" href="GtkTreeModel.html" title="GtkTreeModel">GtkTreeModel</a> **tree_model,                                                         <a class="link" href="GtkTreeModel.html#GtkTreePath">GtkTreePath</a> **path);</pre></div><div class="refsect1" lang="en"><a name="id3769774"></a><h2>Object Hierarchy</h2><pre class="synopsis">  GInterface   +----GtkTreeDragSource</pre><pre class="synopsis">  GInterface   +----GtkTreeDragDest</pre></div><div class="refsect1" lang="en"><a name="id3769811"></a><h2>Known Implementations</h2><p>GtkTreeDragSource is implemented by <a class="link" href="GtkTreeModelFilter.html" title="GtkTreeModelFilter">GtkTreeModelFilter</a>,  <a class="link" href="GtkTreeModelSort.html" title="GtkTreeModelSort">GtkTreeModelSort</a>,  <a class="link" href="GtkTreeStore.html" title="GtkTreeStore">GtkTreeStore</a> and  <a class="link" href="GtkListStore.html" title="GtkListStore">GtkListStore</a>.</p><p>GtkTreeDragDest is implemented by <a class="link" href="GtkTreeStore.html" title="GtkTreeStore">GtkTreeStore</a> and  <a class="link" href="GtkListStore.html" title="GtkListStore">GtkListStore</a>.</p></div><div class="refsect1" lang="en"><a name="id3769874"></a><h2>Description</h2><p>GTK+ supports Drag-and-Drop in tree views with a high-level and a low-level API.</p><p>The low-level API consists of the GTK+ DND API, augmented by some treeview utility functions: <a class="link" href="GtkTreeView.html#gtk-tree-view-set-drag-dest-row"><code class="function">gtk_tree_view_set_drag_dest_row()</code></a>,<a class="link" href="GtkTreeView.html#gtk-tree-view-get-drag-dest-row"><code class="function">gtk_tree_view_get_drag_dest_row()</code></a>, <a class="link" href="GtkTreeView.html#gtk-tree-view-get-dest-row-at-pos"><code class="function">gtk_tree_view_get_dest_row_at_pos()</code></a>, <a class="link" href="GtkTreeView.html#gtk-tree-view-create-row-drag-icon"><code class="function">gtk_tree_view_create_row_drag_icon()</code></a>, <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#gtk-tree-set-row-drag-data"><code class="function">gtk_tree_set_row_drag_data()</code></a> and<a class="link" href="gtk-GtkTreeView-drag-and-drop.html#gtk-tree-get-row-drag-data"><code class="function">gtk_tree_get_row_drag_data()</code></a>. This API leaves a lot of flexibility, butnothing is done automatically, and implementing advanced features likehover-to-open-rows or autoscrolling on top of this API is a lot of work.</p><p>On the other hand, if you write to the high-level API, then all the bookkeeping of rows is done for you, as well as things like hover-to-open and auto-scroll, but your models have to implement the <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragSource"><span class="type">GtkTreeDragSource</span></a> and <a class="link" href="gtk-GtkTreeView-drag-and-drop.html#GtkTreeDragDest"><span class="type">GtkTreeDragDest</span></a> interfaces.</p></div><div class="refsect1" lang="en"><a name="id3769989"></a><h2>Details</h2><div class="refsect2" lang="en"><a name="id3770000"></a><h3><a name="GtkTreeDragSource-struct"></a>GtkTreeDragSource</h3><a class="indexterm" name="id3770013"></a><pre class="programlisting">typedef struct _GtkTreeDragSource GtkTreeDragSource;</pre><p></p>

⌨️ 快捷键说明

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