|
Einige R/3 Bildschirme enthalten einen oder mehrere skrollbare Bereiche. Es befinden sich waagerechte und senkrechte Bildlaufleisten an den Seiten dieser Bereiche, und Anwender können mit ihrer Hilfe durch diese Bildschirmbereiche skrollen.
Beispiel (Transaktion VD03):
Diese Bereiche können ganz normal mit GuiXT verändert werden, z.B. um Felder umzubenennen oder zu löschen. Wenn Sie jedoch neue Felder in diese Bereiche einfügen mchten, dann müssen Sie einige Besonderheiten beachten. Angenommen, Sie möchten einen kleinen zusätzlichen Rahmen (Test) mit einigen Pushbuttons in dem skrollbaren Bereich positionieren, wie in folgendem Bild gezeigt:
Das zugehörige Skript sieht folgendermaßen aus: if Q[Page=Adresse] Ein Problem entsteht dadurch, dass GuiXT die absoluten Koordinaten verwendet, die Sie angegeben haben, dass das neue Element aber nicht innerhalb des skrollbaren Bereichs positioniert wird. Dadurch entstehen Probleme beim Bildschirmaufbau während des Skrollvorgangs. Ihr Bildschirm könnte beispielsweise folgendermaßen aussehen:
Es gibt eine Lösung für dieses Problem: durch die Verwendung der Offset Anweisung können Sie erzwingen, dass die neuen Elemente Teil des skrollbaren Bereichs werden. Wenn Sie einen Offset definieren, der sich auf ein bestehendes Bildschirmelement bezieht, dann nimmt GuiXT nicht nur die Koordinaten dieses Elements als Bezugspunkt, sondern es nimmt auch an, dass weitere Elemente ebenfalls Teil des gleichen Bildschirmbereichs werden wie das als Offset verwendete Element. In unserem Beispiel können Sie den Vorschau Button als Offset verwenden: if Q[Page=Adresse] Ihre neuen Bildschirmelemente werden nun ganz korrekt während und nach dem Skrollvorgang angezeigt. Anstelle der Offset Anweisung können Sie auch in jeder Zeile relative Koordinaten verwenden: if Q[Page=Adresse] An den folgenden zwei einfachen Beispielen sehen Sie nocheinmal den Unterschied zwischen absoluten und relativen Koordinaten. Wir verwenden beide Male den gleichen Bildschirm. A: Text (20,90) “xxxxxxxxxx”
B: Text P[Vorschau]+(16,85) “xxxxxxxxxx” Da die Position von P[Vorschau] bei (4,5) liegt sind die absoluten Koordinaten in beiden Fällen die gleichen. Aber die zugewiesenen Bildschirmbereiche sind jeweils unterschiedlich.
Im Falle des Skripts A wird der Text im nicht-skrollbaren Bereich des Hauptbildes angezeigt.
Im Fall B ist der Text überhaupt nicht sichtbar, aber…
…wenn der Anwender den skrollbaren Bereich nach oben skrollt, wird der Text sichtbar. |