Erfassen von Mausklicks auf Nicht-Graph-Objekte mit JSLIch habe viel über die Funktionen „mousetrap()“ und „handle()“ gelesen, aber diese scheinen für Graph Box-Objekte reserviert zu sein. Ich habe mich gefragt, ob ich einem grafischen Element in einem Fenster ein „Bei-Klick“-Ereignis hinzufügen könnte? Zum Beispiel im folgenden Code:
GuiWindow = New Window( "SMS1" );
theBox = Table Box(
String Col Box( "State", {"Florida", "Texas", "Main", "California"} ),
Number Col Box( "Width", {45, 66, 88, 13} ),
Number Col Box( "Length", {67, 34, 1, 78} ),
Number Col Box( "Depth", {13, 65, 32, 56} )
);
GuiWindow << Append( theBox );
Kann ich einer Tabellenbox eine Mausefalle oder ein ähnliches „On-Click“-Verhalten hinzufügen? Wenn der Benutzer also auf eine beliebige Stelle in der Tabelle klickt, kann er so etwas tun Write("Hallo Welt"); ?
Betreff: Mausklicks auf Nicht-Graph-Objekte mit JSL erfassenWas Sie wollen, ist die Mausbox-Funktion.
GuiWindow = New Window( "SMS1" );
theBox = Table Box(
String Col Box( "State", {"Florida", "Texas", "Main", "California"} ),
Number Col Box( "Width", {45, 66, 88, 13} ),
Number Col Box( "Length", {67, 34, 1, 78} ),
Number Col Box( "Depth", {13, 65, 32, 56} )
);
GuiWindow << Append(
MouseBox(
theBox,
<<SETCLICKENABLE></SETCLICKENABLE>
Betreff: Mausklicks auf Nicht-Graph-Objekte mit JSL erfassen<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Für eine Tablebox können Sie diese auswählbar machen und eine Zeilenwechselfunktion hinzufügen.Siehe das Beispiel unten.
dt = Offen ( „$SAMPLE_DATA/Big Class.jmp“ ) ;
Zusammenfassen ( A = von ( Alter ) , C = zählen , sumHt = Summe ( Höhe ) ,
gemeinHt = Bedeuten ( Höhe ) , minHt = Mindest ( Höhe ) ,
maxHt = Max ( Höhe )
) ;
sr = Neues Fenster ( „Zusammenfassung der Ergebnisse“ ,
tb = Tischbox (
String-Col-Box ( "Alter" , A ) ,
Nummernfeld ( "Zählen" , C ) ,
Nummernfeld ( "Summe" , sumHt ) ,
Plot Col Box ( "Summe" , sumHt ) ,
Nummernfeld ( "Bedeuten" , gemeinHt ) ,
Nummernfeld ( "Mindest" , minHt ) ,
Nummernfeld ( „Max“ , maxHt )
)
) ;
tb << Setzen Sie abwechselnd Schattenreihen ( 1 ) << Zeilenränder festlegen ( 1 ) << Spaltenränder festlegen ( 1 ) ;
tb << Auswählbare Zeilen festlegen ( 1 ) ;
tb << Zeilenwechselfunktion einstellen (
Funktion ( { Das } ,
row_list = Das << Holen Sie sich ausgewählte Zeilen ;
Wenn ( nrows ( row_list ) > 0 ,
eine Reihe = row_list [ 1 ] ;
drucken ( „Zeile ausgewählt:“ || verkohlen ( eine Reihe )) ;
) ;
) ;
) ;