Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Truc tout bête avec EDIT Sam 15 Oct 2011 - 18:48 | |
| Bonsoir, Comment rendre un champ editable, non-editable ? Je pensais utiliser INACTIVE mais lorsque je le rend inactif, le HINT ne fonctionne plus. Pour être plus précis, voici un bout de code : - Code:
-
hide 0
LABEL Calc LABEL KeyboardTimer, ActiveKeyTimer
' -------------------------------------------- ' Variables de calcul ' -------------------------------------------- dim bac_hauteur,bac_longueur,bac_profondeur,bac_epaisseur dim bac_volume,bac_poids
dim baci_hauteur,baci_longueur,baci_profondeur dim baci_cm,baci_volume ' -------------------------------------------- ' Définition du formulaire de saisie ' -------------------------------------------- dim sbac_hauteur,sbac_longueur,sbac_profondeur,sbac_epaisseur dim sbac_volume,sbac_poids sbac_hauteur=100:sbac_longueur=102:sbac_profondeur=104:sbac_epaisseur=106 sbac_volume=118:sbac_poids=120
dim sbaci_volume,sbaci_cm,sbaci_poids sbaci_volume=200:sbaci_cm=202:sbaci_poids=204
' construction des champs dim i,j dim nb_cont,id_cont: nb_cont=2 dim nb_ele dim txt$,value,value2
data 1,"Dimensions",10,10,4 data "Longueur (m) :",sbac_longueur,1.5,"" data "Hauteur (m) :",sbac_hauteur,0.5,"" data "Profondeur (m) :",sbac_profondeur,0.5,"" data "Epaisseur (mm) :",sbac_epaisseur,8,"Note:la densité pour du verre sodo-calcique de qualité courante est de 2,53"
data 2,"Volumes",left(1)+width(1)+10,10,4 data "Volume brut (litre) :",sbac_volume,0,"" data "Volume interne (litre):",sbaci_volume,0,"" data "Poids à vide (kg):",sbac_poids,0,"le poids ne tient pas compte du poids des renforts, des entretoises, raidisseurs et verre de couverture" data "Nb litres/cm:",sbaci_cm,0,""
for i = 1 to nb_cont read id_cont: container id_cont : read txt$: caption id_cont,txt$ read value: left id_cont,value : read value: top id_cont,value read nb_ele : height id_cont,((nb_ele+1)*20)+10 : width id_cont,200 for j=1 to nb_ele read txt$ : read value edit value : left value, 118+10 : top value,(20*j):width value, 50: parent value,id_cont alpha value+1 : caption value+1, txt$ : left value+1, 10 : top value+1,top(value)+5 : parent value+1, id_cont read value2: text value, str$(value2) if (value2=0) color value,200,255,200 inactive value end_if read txt$:hint value,txt$ next j next i
' timer pour traitement de saisie des champs DIM KeyboardTimer% : KeyboardTimer% = 1000 TIMER KeyboardTimer% : TIMER_OFF KeyboardTimer% : TIMER_INTERVAL KeyboardTimer%,3000 ON_TIMER KeyboardTimer%,KeyboardTimer
' les evenements : on_change sbac_longueur, ActiveKeyTimer on_change sbac_hauteur, ActiveKeyTimer on_change sbac_profondeur, ActiveKeyTimer on_change sbac_epaisseur, ActiveKeyTimer gosub Calc show 0 END
' =============================================================================================== ' ===============================================================================================
' Calculs divers Calc: bac_longueur = val(text$(sbac_longueur)) bac_hauteur = val(text$(sbac_hauteur)) bac_profondeur = val(text$(sbac_profondeur)) bac_epaisseur = val(text$(sbac_epaisseur))/1000 ' dimensions internes baci_longueur = bac_longueur - ( 2 * bac_epaisseur) baci_hauteur = bac_hauteur - bac_epaisseur baci_profondeur = bac_profondeur - ( 2 * bac_epaisseur) ' calcul du volume brut bac_volume = bac_longueur * bac_hauteur * bac_profondeur * 1000 text sbac_volume,str$(int(bac_volume*10)/10) ' calcul du volume interne baci_volume =(baci_longueur * baci_hauteur * baci_profondeur) * 1000 text sbaci_volume,str$(int(baci_volume*10)/10) ' calcul du volume des vitres (pour détermination du poids du bac à vide : bac_poids = (bac_volume - baci_volume) * 2.53 text sbac_poids,str$(int(bac_poids*100)/100) ' calcul du nombre de litre / cm baci_cm = baci_longueur * baci_profondeur * 10 text sbaci_cm, str$(int(baci_cm*100)/100) return
' ---------------------------------------------------------------- ' Edition ' ---------------------------------------------------------------- ActiveKeyTimer: TIMER_OFF KeyboardTimer% TIMER_INTERVAL KeyboardTimer%, 1500 : ' réarme la bdt du timer TIMER_ON KeyboardTimer% RETURN
KeyboardTimer: TIMER_OFF KeyboardTimer% : ' désactive GOSUB Calc RETURN
Ce que je souhaite, c'est que les champs en verts ne soient pas éditables mais que le commentaire (hint) soit quand même actif... | |
|
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Dim 16 Oct 2011 - 14:41 | |
| | |
|
Invité Invité
| Sujet: Re: Truc tout bête avec EDIT Dim 16 Oct 2011 - 15:14 | |
| Je viens d'essayer ton programme, j'ai regardé le code, et quelque chose m'a surpris.
Est-ce moi qui est rêvé, ou alors on peut écrire depuis toujours sur un objet inactif? Il me semblait que cela générait une erreur.
J'ai essayé avec une version de Panoramic de 2010, en supprimant les conteneurs, pas encore codés à l'époque, et là (c'est plus d'actualité, j'ai une erreur sur la lecture d'un data: "Longueur (m) :", où j'ai le message d'erreur: Longueur (m) n'est pas un point value. J'ai laissé tombé avec cette version.
Une chose tout bête qui me viens à l'esprit. Peut-être remplacer EDIT par un picture pour colorer la partie, et mettre des ALPHA à la place. Et là ALPHA prend le hint et pas obligé de mettre inactif. |
|
Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Truc tout bête avec EDIT Dim 16 Oct 2011 - 18:02 | |
| @cosmos: En fait concernant le INACTIVE, je ne me suis pas posé la question. Pour une raison de look, j'ai déclaré tous les champs en EDIT et j'ai voulu simplement désactiver l’édition au clavier de certains champs... Comme tu le dis, je peux très bien faire la même chose avec des PICTURE et des ALPHA... @jjn4: merci ! j'ai quand même pas mal de lecture à rattraper... les choses ont bien bougées ! | |
|
Invité Invité
| Sujet: Re: Truc tout bête avec EDIT Dim 16 Oct 2011 - 18:17 | |
| Pas de problème, chacun fait comme il veut. J'ai surtout été surpris par le fait qu'on été pas obligé de passé par active pour écrire un texte, et de le rendre inactif. Il y a une chose qui m'a échappé un moment ou un autre.
Qu'en à utiliser edit, c'est la première chose qui me vient à l'esprit, pour mettre des valeurs. L'objet ALPHA, ne me vient pas à l'esprit au premier abord.
C'est vrai qu'en un objet est désactivé hint ne fonctionne pas, alors qu'on mettre du texte, changer un couleur.
Ce que j'aurai aimé pour hint, c'est de pouvoir modifier le délai d'affichage. Un long texte demande plus de temps qu'un petit message à lire. Mais je demande rien, la liste est peine, et les nouveau sont devenus prioritaires par leur jeux. Pour moi, mes anciennes demandes tombent à l'eau, et je suis obligé de faire avec. |
|
659_minifly
Nombre de messages : 590 Age : 76 Localisation : Valenciennes Nord Date d'inscription : 29/04/2010
| Sujet: Re: Truc tout bête avec EDIT Dim 16 Oct 2011 - 19:36 | |
| Cosmos Je ne pense pas qu'il y ait des priorités pour certain, tout le monde est logée a la même enseigne. | |
|
Jack Admin
Nombre de messages : 2395 Date d'inscription : 28/05/2007
| Sujet: Re: Truc tout bête avec EDIT Dim 16 Oct 2011 - 21:00 | |
| - Citation :
- les nouveau sont devenus prioritaires par leur jeux
Pas du tout. Tu as l'impression que je ne réponds pas car je n'ai tout simplement pas beaucoup de temps libre en ce moment. | |
|
Contenu sponsorisé
| Sujet: Re: Truc tout bête avec EDIT | |
| |
|