Domino 9 und frühere Versionen > ND8: Entwicklung

Maske mit großer Tabelle

(1/2) > >>

Tom_S:
Hallo,

ich habe eine Maske mit einer großen Tabelle. In jeder Zelle gibt es eine Schaltfläche, die im Prinzip immer das gleiche macht:
Sie erstellt ein Dokument mit einer anderen Maske und füllt ein paar Felder. Der Inhalt dieser Felder, welche gefüllt werden, ist abhängig davon, in welcher Zeile und Spalte die Schaltfläche geklickt wurde.

Nun habe ich natürlich wenig Lust, die ganzen Schaltflächen per Hand anzupassen und nur irgendwelche Nummern, die er in das neue Formular reinschreibt, zu ändern.

Deshalb meine Frage: Gibt es eine Möglichkeit, rauszufinden, in welcher Zeile/Spalte der Tabelle sich die Schaltfläche (oder auch Aktions-Hotspot) befindet? Dann könnte man das ein wenig besser und vor allem wartbarer lösen.

Ich hoffe, ich konnte mein Problem verständlich rüberbringen und hoffe natürlich auch, dass es dafür überhaupt eine Lösung gibt.

Liebe Grüße
Tom

Glombi:
@Formel oder Script?

Meine Idee wäre, neben den Button ein Feld mit der Zeilennummer zu erstellen, also Zeile1, Zeile2

Der Buttoncode setzt den Cursor dann nach rechts und ermittelt den Feldnamen. Anhand des Index weisst Du dann, in welcher Zeile der Button ist.
Das Feld kann man mit diversen Tricks "unsichtbar" machen. Allerdings darfst Du es nicht verbergen, sonst kann der Cursor da nicht rein  ;)


Man kann den Buttons in den Eigenschaften auch eine eindeutige ID verpassen. Ich weiß aber nicht, wie man das in @Formeln oder Script bekommt, wenn sich das ganze im Notes Client abspielt.

Andreas

Tom_S:
Hallo Andreas,

vielen Dank für deine Antwort.

Wenn möglich, würde ich das gerne mit Script lösen.

Die Umsetzung deiner Idee würde aber bedeuten, ich müsste nochmal so viele Felder erstellen, wie Buttons vorhanden sind. Unsichtbar könnte ich das Feld mit der Schriftfarbe weiß machen...aber dann würde man immer noch die "Umrandung" des Feldes sehen, oder welche Tricks meinst du?
Aber naja...die Idee gefällt mir eh nicht so, sorry. ;-)

Das mit der ID, da werde ich mich mal schlau machen, danke.

Liebe Grüße
Tom

Mitch:
Heyho,

du hast aber nicht den gesamten Code in jedem Button, oder? Denn dann müsstest du ja bei jeder kleinen Änderung alle Buttons anpassen.

Falls du das doch so hast: Erstelle dir eine Sub/Funktion in der Art von "Sub ButtonClick(row%, col%)". Da kommt der Code rein und über die Parameter werden eben die aktuelle Zeile und Spalte übergeben.

Dann musst du in den ganzen Buttons immer nur die eine Funktion aufrufen und die zwei Parameter anpassen. Grundsätzliche Änderungen am Skript machst du bequem und nur einmal in der Sub/Funktion.

Gruß,

Mitch

Tom_S:
Hallo,

ich habe schon eine extra Sub, wo ich die Werte (welche bei jedem Button anders sind bzw. von der Zeile und Spalte abhängig sind) an die Sub übergebe.

Wenn dann doch mal noch mehr Werte übergeben werden sollen, muss ich wieder jeden Button anpassen, was ich mir ersparen will.

Ich dachte ja, dass es vielleicht sowas wie "button.row" (mal ganz einfach gedacht ;)) gibt, dann würde sich das Problem lösen.

Ansonsten muss ich wohl damit leben.

Liebe Grüße
Tom

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln