私は独自のswtウィジェットを書いています。これで、ウィジェットのスタイルを設定しようとする機能の準備が整いました。
現在OSによって選択されている実際の色/スタイルを取得するためのデフォルトの戦略は何ですか?
自分のウィジェットで OS スタイルを模倣するにはどうすればよいですか?
私は独自のswtウィジェットを書いています。これで、ウィジェットのスタイルを設定しようとする機能の準備が整いました。
現在OSによって選択されている実際の色/スタイルを取得するためのデフォルトの戦略は何ですか?
自分のウィジェットで OS スタイルを模倣するにはどうすればよいですか?
以下を使用して、SWT の事前定義されたすべての色にアクセスできます。
Color color = display.getSystemColor(SWT.COLOR_RED);
もちろん、これは として定義されたすべての色に当てはまりますSWT.COLOR_*
。
OS のデフォルトのリストの背景色には、次の方法でアクセスできます。
SWT.COLOR_LIST_BACKGROUND
模擬質問に関しては:
デフォルトのウィジェットの 1 つを拡張しない限り、これを実現するのは非常に困難です。質問にもう少し詳細を追加してください。
ウィジェットには次の色を使用します。カスタム ウィジェットの OS 固有の背景と前景を取得します。
SWT.java
* System color used to paint foreground areas (value is 21).
*/
public static final int COLOR_WIDGET_FOREGROUND = 21;
/**
* System color used to paint background areas (value is 22).
*/
public static final int COLOR_WIDGET_BACKGROUND = 22;