Qtブログ(日本語)

Qt 6.10 ハイコントラストモード

作成者: Qt Group 日本オフィス|Sep 18, 2025 11:58:40 PM
本稿は「High Contrast Mode in Qt 6.10」の抄訳です。

アクセシビリティが主要なオペレーティングシステムで普及を続ける中、ハイコントラストモードは視覚的な明瞭さと使いやすさを向上させる重要な機能となっております。Qt 6.10のリリースにより、Qtで構築されたアプリケーションは複数のプラットフォームでハイコントラストモードを容易にサポートできるようになり、より包括的で視覚的に適応性のあるUIが保証されます。本記事では、Qt 6.10でハイコントラストモードのサポート、異なるシステムにおけるその意味、そしてQtが現在提供する組み込みスタイルについて探っていきます。

コントラスト改善によるアクセシビリティ向上

近年、Windows 11、macOS、Gnomeデスクトップなどの主要プラットフォームでは、ユーザーインターフェースの前景と背景のコントラストを強化するハイコントラストモードの設定が導入されています。これらのコントラスト設定を調整すると、通常はシステムカラースキームが更新され、場合によってはネイティブUIコントロールの輪郭がより鮮明になるなどの変更が加えられます。macOS、iOS、Gnomeでは、システム設定のアクセシビリティセクションにあるトグルスイッチで高コントラストを有効にでき、ほとんどのネイティブコントロールの輪郭が強調されます。Windows 11はコントラストテーマ機能によりより高度なアプローチを採用しており、有効化するとネイティブアプリケーションの外観に大幅な変更が生じます。

Qt 6.10 のハイコントラストモード新機能

6.10 で導入される新機能の一つとして、システムが ハイコントラストモード で動作しているかどうかを検出する機能が追加されました。

ハイコントラストモード はすべてのプラットフォームで共通の標準化された概念ではないため、当社の定義では以下のいずれかの条件が満たされる場合に ハイコントラストモード が有効とみなします:

  • Apple プラットフォームでは、コントラストを上げる設定が有効になっている場合。
  • Windows 11 では、コントラストテーマが適用されている場合。
  • Gnome デスクトップでは、ハイコントラスト設定が有効になっている場合。
  • WebAssembly では、CSS 『prefers-contrast』 メディアクエリが 『no-preference』 に解決されない場合。

システムからの検出に加え、ユーザーのコントラスト設定により適切に対応するため、組み込みスタイルのいくつかを強化いたしました。

バージョン 6.10 では、Qt Widgets 向けの Windows 11、macOS、Fusion スタイル、および Qt Quick Controls 向けの BasicFusionmacOSFluentWinUI3 が対象となります。

Qt Quick Controls のハイコントラストモード

Basic

Basic スタイルでは、明るい色調と暗い色調の両方に対応した組み込みのカラーパレットが提供されるようになりました。また、ハイコントラストモードが有効な場合、ほとんどのコントロールの輪郭がより強調表示されます。以下の画像はシンプルなアプリケーションの例を示しています。左の画像は標準のコントラストモードでの表示、右の画像はハイコントラストモードでの表示です。

Fusion

QtウィジェットのFusionスタイルと同様に、Fusionスタイルでは高コントラストモードが有効な場合、ほとんどのコントロールに太い輪郭を追加しております。下記のスクリーンショットは同一アプリケーションを、左側が標準コントラストモード、右側が高コントラストモードでの表示例としてご確認いただけます。

 

FluentWinUI3

FluentWinUI3スタイルは、ネイティブのWinUI 3ウィンドウズアプリと同様の外観と操作性を採用するよう設計されています。バージョン6.10では、コントラストテーマ機能をご利用のお客様向けに、このスタイルに大幅な改善が施されました。ほとんどのコントロールは、システムテーマや外観に関わらず、ネイティブのものと非常に似た見た目になるはずです。

Qt Widgets向けハイコントラストモード

macOS スタイル

macOSスタイルはネイティブAPIを使用してコントロールをレンダリングするため、システム設定 → アクセシビリティ → ディスプレイ → コントラストを上げるで設定可能なコントラストを上げるモードを既にサポートしております。

Windows 11 スタイル

Qt Widgetsでは複数の異なるウィンドウスタイルを提供しておりますが、現在最も関連性の高いのはWindows 11スタイルです。

通常、Windows 11スタイルでは公式のMicrosoft Figmaテンプレートからハードコードされた色が使用されますが、コントラストテーマが適用された場合には、代わりにGetSysColorから色情報を読み取る必要があります。期待される色が使用されるよう、このスタイルの改善を継続的に行っております。以下に、各種コントラストテーマ使用時の現在のスタイルのプレビューを掲載いたします。

Fusion スタイル

Fusionスタイルでは、ハイコントラストが有効な場合、コントロールの輪郭がより強調されるようになりました。

アクセシビリティを容易に

Qt 6.10ではハイコントラストモードのサポートを追加し、アクセシブルで包括的なUIの作成をさらに容易にいたします。Windows 11、macOS、Fusion、FluentWinUI3などのプラットフォーム固有のコントラスト設定や組み込みスタイルに準拠することで、アプリケーションはより幅広いユーザー層にアクセシブルになるだけでなく、視覚的な一貫性も保たれます。さらに、様々なアクセシビリティ規制への準拠も容易になります。