FlexView

Q10 10
FlexViewでの縦書き、複数行(改行)表示

A10 10
[解決方法]
FlexViewクラスではタイトルや表示項目において、縦書き表示は行えません。
複数行(改行)表示は、FlexLabelクラスのみ対応しております。

ただし、タイトルは複数行(改行)表示ができません。

改行コード(\n、\r\n)を含む文字列をセットしても、
下図1のようにFlexLabelクラスの表示項目以外は、改行が無効となります。
[図1]

     <記述例>
FlexView FlexView1 {
  Width = 365;
  FlexRecord FlexRecord1 {
    Height = 30;
    FlexHeader FlexHeader1 {
      Title = "FlexHeaderの\r\nタイトル";  /* 改行無効 */
      Value = "FlexHeaderの\r\n表示項目";  /* 改行無効 */
      Width = 120;
      Border = $TRUE;
      BorderStyle = $SOFT;
    }
    FlexLabel FlexLabel1 {
      Title = "FlexLabelの\r\nタイトル";    /* 改行無効 */
      Value = "FlexLabelの\r\n表示項目";
      Width = 120;
    }
    FlexButton FlexButton1 {
      Title = "FlexButtonの\r\nタイトル";    /* 改行無効 */
      Value = "FlexButtonの\r\n表示項目";    /* 改行無効 */
      Width = 120;
    }
  }
  InsertRow(5);
}
                 

また、基本的にFlexViewクラスでは、タイトルや表示項目において
縦書き表示はできませんが、
縦1行程度の文字列であれば、FlexLabelクラスの複数行(改行)表示を利用して
表示する文字列を整形し、縦書き表示しているように見せる事は可能です。
[図2]
     <記述方法>
FlexView FlexView1 {
  Width = 156;
  Height = 282;
  FlexRecord FlexRecord1 {
    Height = 80;
    FlexLabel FlexLabel1{
      Width = 30;
      HorizontalAlign = $CENTER;
      /* 改行を追加して文字列を整形し、
         縦書き表示しているように見せる */
      Value = "あ\r\nい\r\nう\r\nえ\r\nお";  
    }
    FlexLabel FlexLabel2{
      Width = 30;
      HorizontalAlign = $CENTER;
      Value = "か\r\nき\r\nく\r\nけ\r\nこ";
    }
    FlexLabel FlexLabel3{
      Width = 30;
      HorizontalAlign = $CENTER;
      Value = "さ\r\nし\r\nす\r\nせ\r\nそ";
    }
    FlexLabel FlexLabel4{
      Width = 30;
      HorizontalAlign = $CENTER;
      Value = "た\r\nち\r\nつ\r\nて\r\nと";
    }
  }
  InsertRow(3);
}

管理番号:Flx_010
  Biz-Collections Bizの宝箱 トップへ
  Biz/Browser・Biz/Designer TIPS集 トップへ