4D View Pro: 表組みのスタイルをカスタマイズ

表組みは、4D View Pro ドキュメントに不可欠な要素です。そのため、4D のリリースを通じて、多くの表組み関連の機能を提供してきました。4D v19 R8 では、ドキュメントの一部として表の見た目がフィットするように、スタイル関連の新機能が追加されました。

新しい VP Set table theme コマンドを使えば、規定の表テーマをプログラミングで適用することができます。もし、これらの規定テーマがニーズに合わない場合は、独自のテーマを定義して表組みに適用できます。

HDI: 4D View Pro: 表組みとテーマ

SpreadJS には 60以上のテーマが定義されています:

  • “dark1” から “dark11”
  • “light1” から “light21”
  • “medium1” から “medium28”
  • “professional1” から “professional24”

これらのテーマでテーブルを作成するには、VP CREATE TABLE コマンドで指定します:

$parameter:=New object
$parameter.theme:="dark10"
VP CREATE TABLE(VP Cells("ViewProArea"; 2; 1; 3; 1); "myTable"; "people"; $parameter)

同様に、既存の表組みのテーマを変更するには、VP SET TABLE THEME で指定します:

$parameter:=cs.ViewPro.TableThemeOptions
$parameter.theme:="medium2"
VP SET TABLE THEME("ViewProArea"; "myTable"; $parameter)

blank

リボンインターフェースからも、dark (濃色)、light (淡色)、medium (中間) テーマを設定してテストすることができます:

blank

カスタマイズされたテーマを作成する

定義済みテーマがニーズに合わない場合、テーマを自分で作成することができます。列、行、ヘッダー、フッターにそれぞれスタイルを定義することができます。

たとえば、このような交互の列表示をしたい場合:

blank

次の手順が必要です:

  • .bandColumns (列の交互のスタイル) を true に設定します:
$param:=cs.ViewPro.TableTheme.new()
$param.bandColumns:=True
$param.bandRows:=False
  • ヘッダーのスタイルを作成します:
$styleHeader:=cs.ViewPro.TableStyle.new()
$styleHeader.backColor:="rgb(255,228,92)"
$styleHeader.foreColor:="rgb(3,4,94)"
$param.theme:=cs.ViewPro.TableThemeOptions.new()
$param.theme.headerRowStyle:=$styleHeader
  • 交互の列スタイルを作成します:
$styleColumn1:=cs.ViewPro.TableStyle.new()
$styleColumn1.backColor:="#0077B6"
$styleColumn1.foreColor:="#03045E"
$param.theme.firstColumnStripStyle:=$styleColumn1

$styleColumn2:=cs.ViewPro.TableStyle.new()
$styleColumn2.backColor:="#CAF0F8"
$styleColumn2.foreColor:="#03045E"
$param.theme.secondColumnStripStyle:=$styleColumn2
  • VP SET TABLE NAME で、新しいテーマを適用します:
VP SET TABLE THEME("ViewProArea"; "myTable"; $param)

これで完了です!

この機能については、上記の HDI とドキュメントを参照してください。

Fabrice Mainguené
- Product Owner -Fabrice Mainguenéは、2016年11月に4D Programチームに参加しました。プロダクトオーナーとして、彼はユーザーストーリーを書き、それを機能仕様に変換する役割を担っています。CNAMでコンピュータサイエンスの学士号を取得した後、FabriceはWindev開発者として小さなソフトウェア出版社に入社しました。その後、彼は産業および貿易分野のさまざまな企業で、Windev および Web 開発者として、また新機能の技術アドバイザーとして働きました。