FAQ
技術的な質問>
実現したい処理
Q152:ラベルに文字色を付けてそれをテーブルでもテキストでも何でも良いのですが、貼りつけた時に文字が黒で表示されます。赤色でラベル色を変えても赤表示されないので良い方法はないのでしょうか?
Q152-1:
関連ファイル:
テキスト設定_色設定.mzax
A152-1:
メソッドが日本語化されていなくわかりにくいですが、テキストフィールドへの文字色の設定には
setForeground(Color)
を用います。
テーブルにも同様のメソッドが用意されております。
setCellForeground(Color,int,int):セルの文字色の変更
setColumnForeground(Color,int):列の文字色の変更
setRowForeground(Color,int):行の文字色の変更
また、ForegroundをBackgroundにすると背景色が変更できます。
お送りいただいたアプリケーションに修正を施したものを関連ファイルにて掲載致します。
関連ファイル:
テキスト設定_色設定_修正.mzax
Q152-2:
テキストエリアコンポーネントに設定された文字を行ごとに色を変えて表示する方法。
A152-2:
テキストエリアコンポーネントの文字に設定できる色は1種類のみなので、テキストエリアの代わりにテーブルコンポーネントを用いて、行ごとに色を設定する方法がございます。
Q152-3:
一度データ設定し色付けしたテーブルデータ(テーブルA)を他のテーブル(テーブルB)にコピーするというのをやりたいのですが、データはA→Bへコピー出来ても各セルの色までコピーされません。何か良い方法はないのでしょうか?
A152-3:
テーブルデータをコピー先のテーブルへ設定した後、getBackgroundTable()メソッドで元のテーブルの背景色テーブルを取得し、それをsetBackgroundTable(PFObjectTable)メソッドでコピー先テーブルに設定することで、セルの色のコピーを行うことができます。
関連ファイル:
テーブル色コピー.mzax
備考:
「Q&A152-1」は、
「テキストフィールド」の「Q&A14」
、「Q&A152-2」は、
「テキストエリア」の「Q&A3」
、 Q&A152-3」は、
「テーブル」の「Q&A66」
にも掲載。