Bonjour,
C'est la première fois que j'interviens sur le forum R
Je suis en train de développer une interface graphique en R en utilisant le package "gwidgetRGTK2" que j'apprends sur le tas :-(
J'ai un soucis : je souhaite, pour ne pas multiplier du code inutile, créer une procédure /fonction à part qui mette à jour ma fenêtre afin d'y faire appel à différents endroits.
J'ai créé un exemple très simplifié "code exemple" pour mieux comprendre mon besoin.
Si j'arrive ou plutôt vousarrivez à le modifier comme voulu alors j'aurais gagné un temps précieux et de la lisibilité dans mon code.
La modification voulu est qu'au lieu d'intégrer le code suivant sur mon évènement clik boutton dans l'interface
que je puisse faire appel à une fonction qui ressemble à ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 svalue(labelIndiceRes2)<-majfenêtre(svalue(comboIndiceRes))
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 majfenêtre(valeurMaj,Objetàmodifier)
Code exemple à modifier : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 #programme de test library(RGtk2) library(gWidgetsRGtk2) library(cairoDevice) majfenêtre<-function(valeurMaj){ valeurMaj<-valeurMaj*2 return (valeurMaj) } Gui<-function() { cstlstIndice <-c(1,2,3,4,5) mainWin1<-gwindow("Test1") #création fenêtre générale mainGroup1<-ggroup(horizontal = FALSE, container=mainWin1) # création group générale mainNoteBook1 <- gnotebook(container = mainGroup1, expand = TRUE) # NoteBook # début groupe gGroup1 gGroup1<-ggroup(horizontal=FALSE, container=mainNoteBook1, label="Validation tests") bPassTovalidation<-gbutton("indice selectionné multiplié par 2", handler = function(h,...) { # code à modifier pour faire appel à une procédure svalue(labelIndiceRes2)<-majfenêtre(svalue(comboIndiceRes)) }, container=gGroup1, toolkit=guiToolkit() ) labelIndiceRes2 <- glabel("NA", container=gGroup1) # fin groupe gGroup1 # début groupe gGroup2 gGroup2<-ggroup(horizontal=FALSE, container=mainNoteBook1, label="Validation tests") labelIndiceRes <- glabel("valeur: ", container=gGroup2) comboIndiceRes <- gcombobox(cstlstIndice,selected = 3, container=gGroup2) # fin groupe gGroup2 }
Je pense qu'il me manque une notion peut-être sur les handler mais je ne trouve pas :-(
Merci à tout ceux qui se pencheront sur ce problème...
Partager