2010-07-26 102 views
0

我用MrEd Designer爲Scheme程序製作了一個用戶界面。它包含一個使用draw-point繪製點的mred:canvas%。它的定義爲:mred中缺少方法:canvas%?

(define (naca-ui-init 
     {...} 
     #:airfoil-canvas-class 
     (airfoil-canvas-class canvas%) 
     {...}) 

及更高版本:

(set! airfoil-canvas 
     (new 
     airfoil-canvas-class 
     (parent vertical-pane-2165) 
     (horiz-margin 0) 
     (min-width 350) 
     (vert-margin 0) 
     (gl-config #f) 
     (stretchable-width #t) 
     (enabled #t) 
     (stretchable-height #t) 
     (min-height 175) 
     (label "Canvas") 
     (style '(border)))) 

當我嘗試(send airfoil-canvas draw-point 15 30),但是,我得到:

send: no such method: draw-point for class: canvas% 

=== context === 
/usr/local/lib/racket/collects/racket/private/class-internal.rkt:4543:0: obj-error 
/home/jason/NACA/naca-ui.scm:29:8: plot-point 
/home/jason/NACA/naca.scm:225:23 
/home/jason/NACA/naca-ui.scm:21:10: inner 

我是誤讀documentation,還是有別的東西我不在這裏?

PS:可以有人有更多的代表添加標籤MrEd?這在這裏是相關的,但你需要1500來添加新的標籤。

+1

如果你在這裏沒有得到答案,你應該試試[球拍郵件列表](http://racket-lang.org/community.html)。 – 2010-07-27 06:17:43

+1

完成。如果我在那裏得到了很好的答案,我會在這裏總結一下。 – JasonFruit 2010-07-27 15:52:52

回答

1

回答我自己的問題:總之,我的文檔很模糊,我應該使用http://docs.racket-lang.org/。從那裏,很容易看出:

(send airfoil-canvas draw-point 15 30) 

應該是:

(send (send airfoil-canvas get-dc) draw-point 15 30) 

你需要做你的圖紙上繪製上下文的這些日子。