OS Xアプリケーションで、単純なプッシュボタンの異なる状態を管理しようとしています。ユーザーがクリックすると、ユーザーがクリックを解放したときです。NSButtonをSwiftでクリックしてリリースイベントを処理する
は現在、私は、ボタンがクリックされたNSMomentaryLightButton(オン状態)
NSMomentaryLightButton で私のボタンのタイプを設定し、それ が点灯表示されます。ボタンに罫線がある場合は、 と表示されることがあります。ボタンを離すと、通常の(オフ) の状態に戻ります。このタイプのボタンは、 の状態が表示されないため、アクションをトリガするのに最適です。通常のイメージまたはタイトルを常に表示します。 このオプションは、私はそれが良い方法だと思ったが、私は私のボタンの状態を印刷するとき、それは私が設定プッシュボタンよりトグルボタンのようなものだInterface Builderののボタン インスペクタ
に瞬時ライトと呼ばれています。あなたが見ることができるようにexemple gif
合計すると、私は本当のプッシュボタンの動きを持つことができますか?ユーザーがクリックしたとき、およびユーザーがクリックを解放したときに関数を呼び出します。
ありがとう、
通常のプッシュボタンを使用すると、ユーザーがクリックを解除したときにのみアクションが発生します。ボタンを押したときに別のアクションを期待する人はいません。彼らはまだ自分の考えを変えるチャンスがあります。どういう意味ですか?https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSButtonCell_Class/index.html#//apple_ref/c/econst/NSPushOnPushOffButton?トグルスイッチ、つまり?あなたの言語を明確にすることはできますか? – BaseZen
私の悪い英語のために申し訳ありません。私のアプリケーションでは、ボタンはピアノのキーボードから来ているので、ユーザーがプッシュダウンしたときに何かトリガーしたい、そしてプッシュアップするときに他のものをトリグにしたい。現在のところ、ボタンは1回のクリックで2つの状態を持つよりも、クリックごとに状態が変わります。それは明確ですか? :{ Swift.print( "MouseDownイベント!") }のmouseUp(theEvent:NSEvent)funcを公共上書き { Swift.print(「マウス:mouseDownイベント(NSEvent theEvent)funcを オーバーライド公共:/ – Kyz
最後に、私は解決策を見つけましたUp! ") } – Kyz