0

選択すると色が変わるAppleの「プレビュー」アプリマークアップボタンと同様に、NSImageを使用してNSButtonを作成しようとしています。

バンドル リソースを見ると、Apple が PDF 画像 (TB_annotMarkupUnderlineTemplate.pdf など) を使用しているかのように見え、VS を選択するとプログラムによって色が変わります。青の代替イメージを持つ。

PDF 画像にはアルファ値があるため、画像マスキングを行うことができません。

何か提案はありますか?

4

1 に答える 1

0

私があなたの質問を理解していれば、実行時に画像の背景色を変更したいと思っていました。

つまり、あるイベントでは、画像の背景色を変更します。また、NSButton はココア ( aqua ) スタイルで直接描画されるため、背景がありません。

画像を配置してボタンのタイトルを非表示にする必要があります(タイトルを表示したくない場合)。

これが私のサンプルコードです。

NSComboBox で IBAction を使用しましたが、

- (IBAction)comboSelect:(id)sender {

    if ([[sender stringValue] isEqualToString:@"Red" ]) {
        [self.button setImage:[NSImage imageNamed:@"imgRed"]];
    }
    else if ([[sender stringValue] isEqualToString:@"Green" ]) {
        [self.button setImage:[NSImage imageNamed:@"imgGreen"]];
    }
    else if ([[sender stringValue] isEqualToString:@"Blue" ]) {
        [self.button setImage:[NSImage imageNamed:@"imgBlue"]];
    }
}
于 2013-03-20T03:51:23.560 に答える