0
を処理し、私はこのようなコードの部分を持っている例外をスロークリップボードのテキストが解放されていないように見えます(私はもはやクリップボードにコピーできません)。FLTK内部の私はFLTK 1.3.3使用してい
私は成功せず、可能な回避策を試してみました:
class MyWidget: public Fl_Widget
{
private:
std::string textBuffer;
private:
static void MyCallBack(Fl_Widget *,void *);
virtual int handle(int) override;
void ParseClipboardText(const std::string &);
public:
MyWidget();
};
MyWidget::MyWidget()
{
callback(&MyCallBack);
when(FL_WHEN_CHANGED);
// ...
}
int MyWidget::handle(int event)
{
if (event==FL_PASTE)
{
textBuffer= Fl::event_text();
set_changed();
return 1;
}
return Fl_Widget::handle(event);
}
void MyWidget::MyCallBack(Fl_Widget *pw,void *)
{
MyWidget *pmw= static_cast<MyWidget *>(pw);
pmw->ParseClipboardText(pmw->textBuffer);
}
はすぐhandle
復帰後に呼び出されるコールバック関数をスケジューリングする方法はありますか?
投げているセクションの周りにtry-catchを配置してみてください。 – cup
@cup私はできないのではないかと恐れている。私は、例外をキャッチし、適切なウィジェットを表示し、関連するイベントを処理したい。 – metalfox