14

(インターフェイス ビルダーではなく) コードを使用してNSButton、イメージのような を作成する必要があります。具体的には使いたいのですが、ボタンのように見えるのではなくNSImageNameStopProgressFreestandingTemplate、画像のように見える必要があります。これは次 のことを意味します 。

ありがとう。

4

3 に答える 3

21

私はこの応答が少し遅いことを知っていますが、与えられた場合、これを試すことができますthisButton:

[thisButton setImage:[NSImage imageNamed:NSImageNameStopProgressFreestandingTemplate]];
[thisButton setImagePosition:NSImageOnly];
[thisButton setBordered:NO];

最後の行が重要です。ボタンの境界線を削除すると、効果的にベゼルが取り除かれ、クリックする画像だけが残ります。imageScaling(ところで、私は上記のコードを具体的に試していないので、最適に動作させるには、またはを設定するなど、他のいくつかの微調整が必​​要になる場合がありますbuttonType。)

最後に 1 つ: テンプレート画像を使用している場合 (おっしゃる通り)、Cocoa は自動的にそれをわずかに濃い灰色のグラデーションで表示します。ボタンをクリックすると、一時的に暗くなり、真っ黒になります。これは、望まない自動的な「ボタンダウン」ルックです。ただし、これは非常に微妙であり、ボタンが機能したことを示す良い指標です。これが発生したくない場合は、目的の画像のインスタンスを取得できます[stopImage setTemplate:NO];

于 2011-08-19T19:31:03.460 に答える