2012-02-23 2 views
2

MonoMacのビューに円を描こうとしていますが、どこから始めたらよいか分かりません。 Windows上の.NETの下 私はMonoMacで描画する

Canvas canv = new Canvas(); 
Ellipse ell = new Ellipse(); 
Canvas.SetLeft(ell, 5); 
Canvas.SetTop(ell, 5); 
canv.Children.Add(ell); 

おかげのような何かをしたいです。

答えて

8

MonoMacはWPFと少し違って動作します。あなたはそうのように、派生クラスののdrawRect()関数の中で、あなたの描画を行う必要があります:答えのための

public class MyDrawing : NSView 
{ 
    public override void DrawRect (RectangleF dirtyRect) 
    { 
     var context = NSGraphicsContext.CurrentContext.GraphicsPort; 
     context.SetStrokeColor (new CGColor(1.0, 0, 0)); // red 
     context.SetLineWidth (1.0F); 
     context.StrokeEllipseInRect (new RectangleF(5, 5, 10, 10)); 
    } 
} 
+0

感謝を。 したがって、継承されたクラスを作成する必要があります。 それをアプリにどのように入れますか? 私の知らないことを残念に思って、私はMonoMacにはとても新しいです。 – Girildo

+3

XIBを使用している場合(あなたが推測しているあなたのコメントで)、カスタムクラスの最上部に[Register( "MyDrawing")]を追加してから、インターフェースビルダーでプレーンNSViewを配置しますIBのクラス名を "MyDrawing"に変更します。それはすべて動作するはずです! – Curtis

+0

ああ、ありがとう!あなたは私をたくさん助けました! – Girildo

関連する問題