マスタ検索画面の結果リストの文字色
マスタ検索の検索結果が表示される Table は,文字が Label で表示されるため,JTable の Selected Color が適用されず,選択しても文字色が黒のままになってしまう。黒のままでも実用上問題はないのだが,他の Table のように,選択すると Selected Color になるように変更した。
client/MasterRenderer.java
//↓ 選択された状態の時は,色を変えたいので,パラメーターとして,色を持ってくることにした
// 呼び元で,isSelected の状態に合わせて色を指定して呼び出す
// public void setColor(JLabel label, String startDate, String endDate) {
public void setColor(JLabel label, String startDate, String endDate, Color c) {
switch (useState(startDate, endDate)) {
case 0:
label.setEnabled(false);
//label.setForeground(beforStartColor);
////label.setForeground(Color.BLACK);
label.setForeground(c);
break;
case 1:
label.setEnabled(true);
//label.setForeground(inUseColor);
////label.setForeground(Color.BLACK);
label.setForeground(c);
break;
case 2:
label.setEnabled(false);
//label.setForeground(afterEndColor);
////label.setForeground(Color.BLACK);
label.setForeground(c);
break;
}
}
public void setColor(JLabel label, String endDate, Color c) {
//setColor(label, null, endDate);
setColor(label, null, endDate, c);
}
あとは,呼び出し元で,setColor に色をセットする
- order/DiagnosisMaster.java
- order/InjectionMedicineMaster.java
- order/MedicalSuppliesMaster.java
- order/ToolMaterialMaster.java
- order/TreatmentMaster.java
public Component getTableCellRendererComponent(
JTable table,
Object value,
boolean isSelected,
boolean isFocused,
int row, int col) {
Component c = super.getTableCellRendererComponent(
・
・
if (value != null && value instanceof DiseaseEntry) {
DiseaseEntry entry = (DiseaseEntry) value;
String disUseDate = entry.getDisUseDate();
//// setColor(label, disUseDate); // isSelected に合わせて色を変える
if (isSelected) setColor(label, disUseDate, table.getSelectionForeground());
else setColor(label, disUseDate, table.getForeground());
・
・
« にせモーダル | トップページ | カルテ保存後ウインドウを閉じる(続) »
「OpenDolphin」カテゴリの記事
- OpenDolphin: Java 25 / WildFly 38 への移行(2025.11.09)
- 運用17年目のまとめ(2025.02.03)
- IME on/off の切換 - その2(2024.12.02)
- OrcaController オルコン(2024.11.28)
- OpenDolphin: java 21 / wildfly 34 への移行(2024.11.08)


