3

XCode、MonoMac、Mono、MonoDevelopをMac OS Xマシンにインストールしましたが、Clickイベントを単純なボタンに正常に接続する方法を理解することはできません。

まず、ボタンをヘッダーファイルにコントロールドラッグすると、アウトレットが作成されました。これで、C#コードからボタン(btnHello)にアクセスできます。これはすばらしいことですが、イベントをどのように、どこでバインドするのでしょうか。

やってみた

this.btnHello.PerformClick += delegate {
    this.Title = "Hello World";
};

しかし、MonoDevelopは、「メソッドグループ」の問題が原因で、それができないと不満を漏らしています。

私はこれを何日も研究してきましたが、これを行う方法についてのチュートリアルを見つけることができません。また、将来これを適切に行う方法がわからないため、サンプルコードを使用したくありません。MonoMacに近いので、MonoTouch入門ガイドを見てみましたが、それも役に立ちませんでした。

特にアウトレットとアクション、そしてそれらを自分の要素にどのように結び付けることができるかに関して、どんな助けも素晴らしいでしょう!ありがとうございました!

4

3 に答える 3

3

試す:

    this.btnHello.Activated += delegate {
    this.Title = "Hello World";
};

このコードはコントローラーのどこかに、おそらく AwakeFromNib に配置する必要があります。

于 2012-09-16T11:15:52.573 に答える
2

問題のほとんどは、Web で見つけたほとんどのチュートリアルが、MonoDevelop、XCode、および Interface Builder の古いバージョンをまだ参照しているという事実に起因する可能性があります。

以前にこのリンクを投稿しましたが、新しい XCode 4.2+ セットアップでイベント ハンドラーを含む、基本的なプロジェクトを開始する方法を示しています。

http://tufnelltech.blogspot.ca/2012/01/hello-os-x-from-c-five-steps.html

于 2012-09-24T08:03:45.217 に答える
0

NSButton.PerformClick()はメソッドであり、イベントではないため、デリゲートをそれに接続することはできません。

残念ながら、私はMac APIに精通していないため、必要な操作を行う方法を提案できません。

于 2012-09-11T23:21:15.450 に答える