2017-07-15 1 views
0

私はa.wから呼び出すことができ、条件に応じてブラウザの色を変更する一般的なプログラムすなわち.iを作成したいと思います。 .iを使ってブラウザの色を変更するにはどうすればよいですか?進行中のブラウザの色を変更するには4gl?

+0

こんにちは!スタックオーバーフロー時の今後の努力のために、コードの[最小、完全、および検証可能なサンプルを作成する方法](http://stackoverflow.com/help/mcve)をチェックする方が良いでしょう。 - ありがとうございました – Momin

答えて

1

ブラウズの線の色を変更したいと思っています。しかし、私はあなたがそれを簡単にするためにフィールドを個別に指定しなければならないので、あなたがそれをインクルードすることができるとは思わない。では、顧客番号、名前、与信限度を表示している顧客テーブルを示すbr-custというブラウズがあるとしましょう。あなたはクレジット制限が(< 2000)低かった場合、これは赤にブラウズ背景色を変更することで動作します

ON ROW-DISPLAY OF BROWSE br-cust DO: 
    DEFINE VARIABLE iBgColor AS INTEGER NO-UNDO. 

    ASSIGN iBgColor = IF customer.credit-limit < 2000 THEN 9 ELSE 15 
      customer.cust-num :bgcolor in browse br-cust = iBgColor 
      customer.name  :bgcolor in browse br-cust = iBgColor 
      customer.credit-limit:bgcolor in browse br-cust = iBgColor. 

END. 

言うと思いますここで、閲覧に行表示イベントを追加する必要が

それが大丈夫なら白い。フォントの色を変更する場合は、代わりにcolorを使用します。

ここで、特定のブラウズに条件に基づいて色を変更する機能を追加したい場合は、これも可能ですが、かなり多くのコードが必要になります。できるだけ早くソリューションを投稿しようとしていますが、私は今Progressにアクセスすることができません。

しかし、これが役立つことを願っています。

1

インクルードにカラーリングロジックが必要な場合は、プリプロセッサで行うことができます。次のようにインクルード(例:colorbrs.i)を作成します。

ON ROW-DISPLAY OF {&Brs} 
DO: 
    ASSIGN 
     {&Tbl}.{&Fld1}:FGCOLOR IN BROWSE {&Brs} = 12 
     {&Tbl}.{&Fld1}:BGCOLOR IN BROWSE {&Brs} = 9. 
END. 

中括弧はプリプロセッサです。彼らはコンパイル時に記入されます。あなたはこのようなあなたの.Wでそれらを定義する:あなたは.Wをコンパイルすると

{colorbrs.i &Brs=brsCust &Tbl=Customer &Fld1=Cust-Num} 

、コンパイラはincludeステートメントから値を取得し、インクルードファイル内のプリプロセッサにそれらを記入します。

+0

テーブル名を使用する代わりに、ブラウザの色にハンドルを使用できますか?私はブラウザに静的なテーブルを持っていません。 – Nidhi

+0

テーブル名プリプロセッサは、データベーステーブルである必要はありません。ブラウザのクエリで使用しているテーブルに設定するだけです。 – TheDrooper

関連する問題