gpt4 book ai didi

c++ - 想要将 "GdkPixbuf"转换为 "GtkSelectionData"对象

转载 作者:太空宇宙 更新时间:2023-11-04 03:50:14 25 4
gpt4 key购买 nike

我想将我的 pixbuf 转换为“GtkSelectionData”,那么如何在 C++ 中转换它?下面是我的示例代码。

clipboard   =   gtk_clipboard_get_for_display (gdk_display_get_default (),
GDK_SELECTION_CLIPBOARD);
GdkPixbuf *pixbuf;
pixbuf = gtk_clipboard_wait_for_image ( clipboard );

if ( pixbuf != NULL )
{
int width, height;
width = gdk_pixbuf_get_width (pixbuf);
height = gdk_pixbuf_get_height (pixbuf);
//printf("width : %d", width);
GtkSelectionData *selectionData;
gtk_selection_data_set_pixbuf(selectionData,pixbuf);
g_object_unref (pixbuf);

}

Error: cannot convert ‘GdkPixbuf* {aka _GdkPixbuf*}’ to ‘GtkSelectionData* {aka _GtkSelectionData*}’ in initialization

谢谢,吉米特

最佳答案

如果你看the documentation , 你会看到有一个函数

gtk_selection_data_set_pixbuf(GtkSelectionData*, GdkPixbuf*)

这正是您想要的。

接下来的问题是,您从哪里获得 GtkSelectionData?答案通常是,当发生掉落(或按下中键单击)时,GTK 会运行一个回调,为您提供选择数据指针,并要求您用应传输的实际字节填充它。

但是整个拖放/剪贴板的东西在 GTK 中非常复杂。虽然 Gnome wiki 上有一些教程很有帮助,但我建议阅读它们:-)

关于c++ - 想要将 "GdkPixbuf"转换为 "GtkSelectionData"对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21277861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com