0

私は、Paul Hudak によるThe Haskell School of Expressionという本に取り組み、関連する gtk ベースのグラフィックス ライブラリ Graphics.SOE.Gtk (ドキュメントへのリンク) を使用して、小規模な 2D 描画実験を行っています。

ただし、このライブラリは非常に基本的なものであり、実際には図形を描画する機能しかありません。現在、ボタンやテキスト ボックスなどの特定の GUI ウィジェットを必要とするプログラムをいくつか書いています。私の質問は: gtk2hsにある GUI ウィジェットと一緒に SOE ライブラリの描画機能を使用することは可能ですか? たとえば、同じウィンドウ内の別のコンテナに三角形を描画するボタンをクリックできるプログラムを作成できます。

これを行う方法をオンラインで検索しましたが、ほとんどのチュートリアルでは cairo を使用して Gtk でグラフィック描画を行うことを提案しています。SOE グラフィックの API は、比較的自己完結型のように見えます。

4

1 に答える 1

2

soegtkいいえ、定期的gtkに対話するための本当に意味のある方法はありません。その理由は、soegtkすべてのデータ型を抽象化するためです。これは、「実装者がインターフェイスを変更せずに実装を簡単に変更できるようにする」という観点からは良い習慣ですが、「私はインターフェイスの方法で物事を変更したいだけのユーザーです。許可すると約束しないでください」という観点。

あなたは出来る:

  • パッケージ内の単一モジュールのテキストのコピーを作成しsoegtk、エクスポート行を調整して、より多くのものをエクスポートし、嫌いな抽象境界を喜んで壊します
  • 無意味にやり取りする; たとえば、ボタンで目的のグラフィックスをgtk含むウィンドウを開くようにします。soegtk
  • たとえば、別の描画ライブラリを学習する、cairoまたはdiagrams
于 2013-01-05T21:14:09.430 に答える