7

Haskell(多項式の場合は積分を解くもの)で最初の「実際のプログラム」を作成しようとしていますが、この部分に完全に困惑しています。

GHCiのような非常にシンプルなものを作りたいです。

> user input
program output
> user input
program output
> user input
program output
> 

私のプログラム出力が画像であることを除いて(LaTeXを使用して数式をPNGに変換する)-したがって、System.IOを使用してこれを行うことはできません。私がインストールしたgtk2hsで可能になると思いますが、この入出力ダイアログを作成する方法がわかりません。

時間があればどうやってやるのか教えてください。どうもありがとう!

4

2 に答える 2

4

ClaudiusMaximusのおかげで、私たちはなんとか次の解決策を思いつくことができました。

module Main where

import Graphics.UI.Gtk

main = do
 initGUI

 ----------------

 win <- windowNew
 onDestroy win mainQuit

 vb <- vBoxNew False 3
 log <- vBoxNew False 2

 sc <- scrolledWindowNew Nothing Nothing
 scrolledWindowSetPolicy sc PolicyNever PolicyAutomatic

 sw <- layoutNew Nothing Nothing

 en <- entryNew

 ----------------

 scrolledWindowAddWithViewport sc log
 boxPackStart vb sc PackGrow 0
 boxPackStart vb en PackNatural 0
 set win [ containerChild := vb ]

 en `onEntryActivate` do
   txt <- entryGetText en
   entrySetText en ""
   l <- labelNew (Just txt)
   boxPackStart log l PackNatural 0
   widgetShowAll log
   Just ran <- scrolledWindowGetVScrollbar sc
   adj <- rangeGetAdjustment ran
   max <- adjustmentGetUpper adj
   adjustmentSetValue adj max

 ----------------

 widgetShowAll win
 mainGUI
于 2010-11-27T20:52:40.730 に答える
0

最初にバックエンド、つまりコマンドを解析して出力イメージを作成するためのコードを実装する必要があると思います。それが機能する場合は、GUIを実装できます。基本的に、入力用のテキストエントリと、出力用のテキストおよび描画ウィジェットが必要です。GUIプログラミングは(IMHO)些細なことではないので、最初にいくつかのGTK/gtk2hsチュートリアル/紹介を見る必要があります。

于 2010-11-27T09:29:06.770 に答える