粘贴

当用户要从Clipboard中粘贴数据时,你应该请求一种特定的格式并提供一个回调函数,该回调函数将与实际数据一并被调用。例如:

void ExampleWindow::on_button_paste()
{
  get_clipboard()->read_text_async(sigc::mem_fun(*this,
              &ExampleWindow::on_clipboard_received));
}

这是一个回调函数的示例:

void ExampleWindow::on_clipboard_received(Glib::RefPtr<Gio::AsyncResult>& result)
{
  auto text = get_clipboard()->read_text_finish(result);
  //Do something with the pasted data.
}

18.3.1. 发现可用格式

要找出当前Clipboard可以用于粘贴的格式,请调用get_formats()方法。然后调用Gdk::ContentFormats方法来确定你的应用程序所支持的格式是否可用。