最近のアクセス:
GetInternalURI メソッド

生成されたアプリケーションの他のレイヤーまたはコンポーネントで解釈可能な Image オブジェクトの URI を返します。

構文

ImageName.GetInternalURI()
入力値の説明:
ImageName
    ナレッジベース内で定義された Image オブジェクトです。 
戻されるタイプ:
String

適用範囲

オブジェクト: Image オブジェクト 
ジェネレーター:  .NETJavaAndroidApple

説明

返される文字列は gximage://<image name> 形式の URI で、image name は Image オブジェクトの修飾名です。
このメソッドは、特に Image オブジェクトの参照を変数に割り当てる必要があり、その Image が実行時にスタイル、言語、密度、レイヤー、またはデザインシステムのオプションに応じて異なる場合に役立ちます (他にも役立つケースがあります)。
アプリケーションのクライアント側では、コンテキスト情報 (デザインシステムのオプションが Dark か Light か) に基づいて適切な画像を表示する必要があります。このコンテキストは、アプリケーションのすべてのレイヤーでは使用できない場合があります。そのため、すべてのコンテキスト情報を利用できないタイミングまたはレイヤーで画像の参照を取得する必要がある場合は、このメソッドが役立ちます。
そのような場合は、FromImage メソッドLink メソッドを使用するよりも、このメソッドを使用した方が良い結果を得られます。

画像 GeneXusLogo がデザインシステムのトークンのオプション (Dark と Light) で異なり、コンテキストに応じて対応する画像を UI コントロール &MyImage に表示する必要があるとします。
その場合は次のようにプログラミングします:
Event 'MyEvent'
   &MyImage.ImageURI = image:GeneXusLogo.GetInternalURI()
EndEvent
Data Provider オブジェクトを使用したシナリオでのこのケースのバリエーションは、次のようになります:
SDT を Logo 項目とともに返す、GetLogo というデータプロバイダーを作成します。
SDTLogo
{
    Logo
    {
        ImageUri = image:GeneXusLogo.GetInternalURI()
    }
}
次に、それをパネルで使用します。
Event 'MyEvent'
   &SDTLogo = &GetLogo()
   &MyImage.ImageURI = &SDTLogo.Logo
EndEvent

参考情報



サブページ
Created: 23/04/24 18:12 by Admin Last update: 24/04/10 18:40 by Admin
カテゴリ
Powered by GXwiki 3.0