2012-01-01から1ヶ月間の記事一覧

wxHaskell での「応答なし」を回避する。(Haskell によるメッセージ処理)

Haskell によるメッセージ処理 以前の「wxHaskell での「応答なし」を回避する」はメッセージ処理をCでやっていましたが、Esa Ilari Vuokko氏製のDirectXバインディングを使ってみるを参考にHaskellでメッセージ処理をします。 -- ghc --make Main.hs -o msg…

クリップボード内のWindows Path文字列をUNIX Path文字列に変更する(Haskell)。

mintty の中でエクスプローラに表示されたパスをコピーして、そのパスに移動したいときがあります。 しかし、コピーして貼付けると表示されるのは "C:\HaskellPlatform\Clipboard-2.2.0\dist"のような文字列で、そのままでは CD コマンドなどには使えません…

Haskell で変数を使う。(IORef、Stateモナド、STモナド)

先に作った電卓のレジスタのように Haskell でも状態を保持しておきたいときがあります。 先の電卓ではIORefを使ってレジスタの状態を保持しました。 IORef > :m + Data.IORef > do{ x <- newIORef 1; modifyIORef x (+2); ret <-readIORef x; return ret} -…

wxFormBuilder を使う(3)「Window の中央にパーツを配置」

FlexGridSizerを使えばWindowを最大にしても、デフォルトに戻してもパーツを中央に表示させることが出来ます。 オブジェクトツリー 最初にFrameを配置して次にBoxSizerを配置。この BoxSizer の orient を wxVERTICALにしてパーツを追加していくとFrameと同…

wxFormBuilder を使う(2)「woBoxSizer でパーツを配置」

python入門から応用までの学習サイト python-izm.com の BoxSizer を参考にボタンを配置してみます。BoxSizer はボタンやテキストなどの部品を縦方向もしくは横方向へ連続して配置するためのものです。縦に連続して配置するか、横に連続して配置するかは右の…

Haskell で wxFormBuilder を使う。

wxFormBuilderの使い方を学ぶには wxRubyのこと (RubyでGUI)はwxRubyのサイトです。wxFormBuilderを使用して、「Hello World」「ラーメンタイマー」「時計」「双六ゲーム」「Twitterクライアント」を作り、XRCファイルも公開していますので、wxFormBuilderの…

Frame にアイコンを表示する。

Frame にアイコンを表示するのには Graphics.UI.WXCore.Image の topLevelWindowSetIconFromFile を使います。 module Main where {- Graphics.UI.WX ライブラリはWXCoreよりは高級というかレイヤが上位。-} import Graphics.UI.WX (start) import Graphics.…