1

アプリケーションのドックアイコンにプログレスバーを表示したい。動作しますが、何らかの理由で、進行状況バーが標準の青いバーではなく灰色のバーとして表示されます。別のSOの質問で見つけたコードを使用しました。私は何が間違っているのですか?

NSProgressIndicator *progressIndicator = [[NSProgressIndicator alloc] initWithFrame:NSMakeRect(0.0f, 0.0f, 80.0f, 20.0f)];
[progressIndicator setStyle:NSProgressIndicatorBarStyle];
[progressIndicator setIndeterminate:NO];
[[[NSApplication sharedApplication] dockTile] setContentView:progressIndicator];
[progressIndicator setDoubleValue:50];
[[[NSApplication sharedApplication] dockTile] display];

ここに画像の説明を入力してください

4

2 に答える 2

2

進行状況インジケーターをサブクラス化し、独自の描画を行わずにこれが可能かどうかはわかりません。問題は、ドックタイルが重要ではないことだと思います(そして重要ではありませんか?)。非キーウィンドウの進行状況インジケーターは灰色になります。ドックタイルについても同じことが言えると思います。進行状況インジケーターをfirstResponderにすることも役に立ちませんでした。

于 2012-07-26T03:34:32.203 に答える
0

なぜ変更されるのかわかりませんが、このAPIによって設定されます。setControlTint:たとえばNSBlueControlTint、青色にするなどです。

于 2012-07-26T02:59:15.543 に答える