Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 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 | | Calendrier |
|
|
| dynamique de numérotation | |
| | Auteur | Message |
---|
Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: dynamique de numérotation Sam 15 Sep 2012 - 18:37 | |
| Ich habe SUB getestet. Hier der Code: I tested SUB. Here's the code: J'ai testé SUB. Voici le code: - Code:
-
' *** TEST SUB-ROUTINEN ******************************************************** ' dim i% dim j% ' dim i$ dim j$ ' dim no% no% = 0 ' dim Form_nr% Form_nr% = no% i% = 10 ' j% = 20 ' ' ' *** Form 0000 erstellen ****************************************************** ' Top 0000,0 Left 0000,0 Width 0000,screen_x-100 Height 0000,screen_y-100 FONT_NAME 0000,"Courier NEW" FONT_SIZE 0000,08 color 0000,255,255,255 Caption 0000,"Form 0" ' ' *** Form 0001 erstellen ****************************************************** ' no% = 1 Form no% Left no%,150 Top no%,100 Width no%,screen_x-300 Height no%,screen_y-200 FONT_NAME no%,"Courier NEW" FONT_SIZE no%,08 color no%, 255,255,255 Caption no%,"Form 1" Form_nr% = no% Hide no% ' ' *** Form 0002 erstellen ****************************************************** ' no% = no%+1 Form no% Left no%,200 Top no%,200 Width no%,screen_x-300 Height no%,screen_y-200 FONT_NAME no%,"Courier NEW" FONT_SIZE no%,08 color no%, 255,255,255 Caption no%,"Form 2" Form_nr% = no% Hide no% ' ' *** Form 0003 erstellen ****************************************************** ' no% = no%+1 Form no% Left no%,200 Top no%,300 Width no%,screen_x-300 Height no%,screen_y-200 FONT_NAME no%,"Courier NEW" FONT_SIZE no%,08 color no%, 255,255,255 Caption no%,"Form 3" Form_nr% = no% Hide no% ' ' *** Werte auf Form 0000 ****************************************************** ' Print_Target_is 0000 ' print_locate 10,10 print i%," aus Hauptprogramm" : ' i% ist immer 10 ' print_locate 10,30 print j%," aus Hauptprogramm" : ' j% wird drei Drucke ersetzt seit der globalen Variable j% verändert ' ' *** SUB ERSTELLEN ************************************************************ ' Form_nr% = 1 TEST1(Form_nr%) :' Sprunglabel für SUB-Routine ' ' *** Werte auf Form 0000 ****************************************************** ' Print_Target_is 0000 ' print_locate 10,50 print i%," nach Test 1 " ' print_locate 10,70 print j%," nach Test 1 " ' ' *** SUB ERSTELLEN ************************************************************ ' Form_nr% = 2 TEST2(Form_nr%) :' Sprunglabel für SUB-Routine ' ' *** Werte auf Form 0000 ****************************************************** ' Print_Target_is 0000 ' print_locate 10,90 print i%," nach Test 2 " ' print_locate 10,110 print j%," nach Test 2 " ' ' *** SUB ERSTELLEN ************************************************************ ' Form_nr% = 3 TEST3(Form_nr%) :' Sprunglabel für SUB-Routine ' ' *** Werte auf Form 0000 ****************************************************** ' Print_Target_is 0000 ' print_locate 10,130 print i$ ' print_locate 10,150 print j$ ' end ' ' ****************************************************************************** ' ****************************************************************************** ' sub TEST1(Form_nr%) ' ' *** Variable in SUB-ROUTINE definieren ' dim_LOCAL LOC_k% dim_LOCAL LOC_l% ' ' *** Variable in SUB-POUTINE mit Werten füllen, aus dem Hauptprogramm ' LOC_k% = i% + 10 :' Diese Variable ist nur gültig in der Prozedur ' LOC_l% = j% + 20 :' Diese Variable ist nur gültig in der Prozedur ' ' *** Variablen der SUB-ROUTINE drucken ****************************************
show Form_nr% ' Print_Target_is Form_nr% ' print LOC_k%," aus Test1" ' print LOC_l%," aus Test1" ' print ' ' *** Bearbeitete Variablen an Hauptprogramm übergeben ' i% = LOC_k% ' j% = LOC_l% ' ' *** Variablen in der SUB-ROUTINE löschen ' FREE LOC_k% ' FREE LOC_l% ' ' *** Rücksprung aus SUB-ROUTINE zurück ' end_sub ' ' ****************************************************************************** ' ****************************************************************************** ' sub TEST2(Form_nr%) ' ' *** Variable in SUB-ROUTINE definieren, ist nur gültig in der Prozedur ******* ' dim_LOCAL LOC_k% dim_LOCAL LOC_l% ' ' *** Variable in SUB-POUTINE mit Werten füllen, aus dem Hauptprogramm ********* ' LOC_k% = i% + 10 ' LOC_l% = j% + 20 ' ' *** Variablen der SUB-ROUTINE drucken **************************************** ' show Form_nr% ' Print_Target_is Form_nr% ' print LOC_k%," aus Test2" ' print LOC_l%," aus Test2" ' print ' ' *** Bearbeitete Variablen an Hauptprogramm übergeben ************************* ' i% = LOC_k% ' j% = LOC_l% ' ' *** Variablen in der SUB-ROUTINE löschen ************************************* ' FREE LOC_k% ' FREE LOC_l% ' ' *** Rücksprung aus SUB-ROUTINE zurück **************************************** ' end_sub ' ' ****************************************************************************** ' *** Test der LOCAL-VARIABLEN ************************************************* ' sub TEST3(Form_nr%) ' ' *** Variable in SUB-ROUTINE definieren, ist nur gültig in der SUB ************ ' dim_LOCAL LOC_k$ dim_LOCAL LOC_l$ ' dim_Local LOC_z$(1000,1000)
' *** Variable in SUB-POUTINE mit Werten füllen, aus dem Hauptprogramm ********* ' LOC_k$ = " aus Test3" ' LOC_l$ = " aus Test3" ' ' *** Variablen der SUB-ROUTINE drucken **************************************** ' show Form_nr% ' Command_Target_is Form_nr%
Button 1003 Left 1003,100 Top 1003,100 Width 1003,200 Height 1003,50 FONT_NAME 1003,"Courier NEW" FONT_SIZE 1003,08 ' Caption 1003," BUTTON auf Form 3" ' Hide 1003 ' Print_Target_is 3 ' print LOC_k$," aus Test3" ' print LOC_l$," aus Test3" ' print ' ' *** Bearbeitete Variablen an Hauptprogramm übergeben ************************* ' i$ = LOC_k$ ' j$ = LOC_l$ ' ' *** Variablen in der SUB-ROUTINE löschen ************************************* ' FREE LOC_k$ ' FREE LOC_l$ ' ' *** Rücksprung aus SUB-ROUTINE zurück **************************************** ' end_sub ' ' ****************************************************************************** ' ****************************************************************************** @Klaus Wie bringen wir die dynamische Nummerierung innerhalb der Sub hin ? hast du eine Idee ? How do we bring down the dynamic numbering within the sub? do you have any idea? Comment pouvons-nous réduire la dynamique de numérotation dans la sous? avez-vous une idée? Danke Severin | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: dynamique de numérotation Sam 15 Sep 2012 - 20:19 | |
| Sans répondre au fond du problème, il y a une chose qui m'interpelle, tu déclares 2 fois les mêmes variables: - Code:
-
' dim i% dim j% ' dim i$ dim j$ ' Et Panoramic ne signale pas cette chose.... ??? Pour le reste, je laisse Klaus.... A+ | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: dynamique de numérotation Sam 15 Sep 2012 - 20:36 | |
| @Jean Claude je crois qu'effectivement Panoramic permet de déclarer des variables de même nom et de types différents, ça me paraît un peu scabreux, mais ça marche... | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: dynamique de numérotation Sam 15 Sep 2012 - 20:54 | |
| Ben Oui, | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: dynamique de numérotation Sam 15 Sep 2012 - 21:29 | |
| @Jean_Claude: les % et $ font partie intégrante du nom. Tu peux en effet avoir la ligne suivante: - Code:
-
dim i, i%, i$ et tu as 3 variables parfaitement indépendantes, sans aucun conflit. @Severin: Schau folgenden Kode an: - Code:
-
' demo SUBs labels() constants() variables() daten() form0() menu() GUI() init() end
' ************* hier alle SUBs des ersten Niveaus
SUB labels() label datei_neu, datei_ende, hilfe_inhalt : ' hier nur Labels für Ereignisse (ON_xxx) label button_hallo END_SUB
SUB constants() dim dll$ : dll$ = "KGF.dll" dim M1% : m1% = 0 - 1 END_SUB
SUB variables() dim no%, no1%, no2%, i%, j%, k%, s$ END_SUB
SUB daten() data 1,17,"Meine Daten" END_SUB
SUB form0() full_space 0 caption 0,"Test für SUB-Struktur" END_SUB
SUB menu() no% = no% + 1 : main_menu no% : no1% = no% no% = no% + 1 : sub_menu no% : parent no%,no1% : no2% = no% : caption no%,"Dateien" no% = no% + 1 : sub_menu no% : parent no%,no2% : caption no%,"Neu" on_click no%,datei_neu no% = no% + 1 : sub_menu no% : parent no%,no2% : caption no%,"-" no% = no% + 1 : sub_menu no% : parent no%,no2% : caption no%,"Ende" on_click no%,datei_ende no% = no% + 1 : sub_menu no% : parent no%,no1% : no2% = no% : caption no2%,"Hilfe" no% = no% ° 1 : sub_menu no% : parent no%,no2% : caption no%,"Inhalt" on_click no%,hilfe_inhalt ... END_SUB
SUB GUI() no% = no% + 1 : button no% : top no%,10 : left no%,10 caption no%,"Hallo" : on_click no%,button_hallo ... END_SUB
SUB init() dll_on dll$ END_SUB
' ************* hier zum Beispiel anwendunsspezifische SUBs
' ************* hier alle Labels der Ereignisse (ON_xxx) datei_ende: terminate
datei_neu: .... return
hilfe_inhalt: ... return
button_hallo: message "Ja, ich bin wach !" return
| |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: dynamique de numérotation Sam 15 Sep 2012 - 21:57 | |
| C'est tout de même un peu troublant pour l'esprit que ça fasse partie du nom, dans mon esprit (et dans la réalité aussi) ce sont des attributs du nom: % entier, $ chaîne. Dans Panoramic il faut bien se rendre à l'évidence, ça marche comme ça, mais personnellement je trouve que ce n'est pas très sain d'avoir des variables différentes de même nom, mais bon, chacun sa philosophie. | |
| | | Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: dynamique de numérotation Sam 15 Sep 2012 - 22:47 | |
| Hallo JL35
Das ist nur ein Beispiel.
Aber ich nutze % und $ wenn die Variablen zusammen gehören.
Nummer und Text.
Dim Grün%(10),Grün$(10)
1 Grün - dann Grün%(x) und Grün$(x)
u.s.w.
Severin
Hello JL35
This is only an example.
But I use% $ and if the variables belong together.
Number and text.
Dim green (10%), green $ (10)
1 Green - Green then% (x) and Green $ (x)
u.s.w.
Severin
Bonjour JL35
Ce n'est qu'un exemple.
Mais j'utilise% $ et si les variables sont indissociables.
Nombre et texte.
Dim verte (10%), le vert $ (10)
1 Vert - Green% alors (x) et vert $ (x)
u.s.w.
Severin | |
| | | Invité Invité
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 0:16 | |
| Je suis désolé, je ne suis pas d'accord avec vous. Je ne comprends pas que ça vous dérange à ce point. Moi dans mes codes, j'associe a% et a$, qui vont très bien ensemble. La plupart du temps quand j'ai a%, et que j'ai une variable de travail, car généralement ce type de variable, c'est pour faire les boucles chez moi, et bien je sais que c'est a$ qui a servi. Je ne sais pas comment c'était avec QBasic, je ne l'ai pas connu. Quand j'ai eu internet, je n'avais que 5 heures par mois à bas débit, et à partager avec mes fils. Donc j'ignorais l’existence. Normalement on devrait avoir la portabilité de tout ce qu'on a fait depuis le début, et vous voulez tout remettre en cause. Je pose la question: en quoi ça vous gène? Parce que vous avez un prof, ou quequ'un qui en met plein la vue, et vous voulez coller à son savoir. Vous ne savez pas être vous même, et ne pas accepter d'emblé la premier idée venue d'un autre, quel-qu’il soit. ça m'énerve qu'on est constamment en train de vouloir tout remettre en question le travail qui a été fait. Et ça change quoi? De plus c'est surprenant on se réveil en 2012, alors que depuis 2009, ça ne dérangeais personne. |
| | | Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 0:42 | |
| @Cosmos70
ich habe deinen Beitrag nicht richtig verstanden.
Ist es richtig Variable % und Variable $ die zusammen gehören so zu benennen ?
@ Cosmos70
I did not understand your post correctly.
Is it correct variable% and the variable $ belong together to identify it?
@ Cosmos70
Je n'ai pas compris votre message correctement.
Est-il exact% variable et la variable $ vont ensemble à l'identifier? | |
| | | Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 0:54 | |
| @Jean Claude
Ich freue mich Ihnen einen neuen Weg gezeigt. Das ist genial in Panoramic. Zähler und Text in gleicher Variable.
Ich war bei meinen ersten Tests auch überascht.
Severin
@ Jean Claude
I am glad you showed a new way. This is awesome in Panoramic. Counters and text in the same variable.
I was surprised at my first tests also.
Severin
@ Jean Claude
Je suis heureux vous ai montré une nouvelle façon. C'est génial de panoramique. Compteurs et le texte dans la même variable.
J'ai été surpris de mes premiers essais aussi.
Severin | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 0:56 | |
| Nein, Severin.
Cosmos wollte sagen, dass er (und ich auch), manchmal die Namen der Variablen so wählt, dass es augenfällig ist, dass sie einem gemeinsamen Kontext dienen. Nur ein kleines Beispiel: t$ als text, und t% als Länge des textes. | |
| | | Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 1:11 | |
| @Klaus
das problem ist "no%" wie an SUB übergeben und im Hauptprogramm einfügen. Um damit die Objekt Nummer zuhalten.
@ Klaus
the problem is "no%" passed as the SUB and the main program insert Order to keep the object number.
@ Klaus
le problème est "no%" passé comme le SUB et le programme principal Insérer Afin de garder le numéro d'objet. | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 1:16 | |
| Je ne vois de problème dans le fait d'avoir i%, i$, i(2),etc... Après à chacun d'avoir son propre style de codage et d'essayer de s'y tenir. C'est essentiel pour s'y retrouver par la suite. Par exemple; j'essaye dans la mesure du possible de mettre mes "CONSTANTES" en majuscule. Rien n'indique dans Panoramic qu'il faut procéder ainsi : c'est une règle que je me suis fixé pour mon confort personnel. Que Severin ecrive DIM a$, a% me choque pas, l'essentiel c'est qu'il s'y retrouve... @Severin: - Citation :
- das problem ist "no%" wie an SUB übergeben und im Hauptprogramm
einfügen. Um damit die Objekt Nummer zuhalten. Patiente un peu : les fonctions vont bientôt pouvoir t'aider... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 9:06 | |
| Im jetzigen Stand der Implementierung können Parameter nue "by value" übergeben werden. Deshalb müssen Variablen wie no% auch globale Variablen bleiben und können nicht als Parameter übergeben werden, au jeden Fall dann nicht, wenn sie in der Prozedur verändert werden. Mein Demonstrations-Kode verdeutlicht das sehr gut. Wenn Du Objekte in diser Logic in einer Prozedur erstellen möchtest, dann musst Du es so machen; - Code:
-
label click_button ... create_button(200,110,"Button 1") create_button(200,140,"Button 2") create_button(200,170,"Button 3") ... SUB create_button(x%,y%,txt$) if variable("button_list%")=0 dim button_click% : ' für Prozedur identifizierre_button() dim button_list%(200) : ' willkürliche Grösse ' Zelle 0: Anzahl der Buttons andere Zellen: Objeknummern des Buttons end_if no% = no% + 1 : button no% top no%,y% : left no%,x% caption no%,txt$ on_click no%,click_button button_list%(0) = button_list%(0) + 1 button_list%(button_list%(0)) = no% END_SUB ... click_button: identifiziere_button(number_click) case 1: ' hier Button 1 ... case 2: ' hier Button 2 ... case 3: ' hier Button 3 ... return
SUB identifiziere_button(n%) dim_local i% button_click% = 0 if button_list%(0)>0 for i%=1 to button_list%(0) if button_list%(i%)=n% button_click% = i% exit_loop : ' hier würde besser das erwünschte EXIT_SUB Kommando stehen... end_if next i% end_if END_SUB
| |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 9:57 | |
| Je vous fait, à tous, mes excuses les plus plates. , Ce matin, je m’aperçois qu'il va falloir que j'aille voir un "ophtamo" , car je n'ai pas vu hier qu'il avait $ et % dans le code de Severin. L'intervention de JL35 m'ayant confortée dans mon égarement. Je suis désolé d'avoir déclenché une polémique inutile, car effectivement a$ et a% sont bien des variables différentes dans mon esprit. Libre à tous de ne pas le faire... Personnellement je le fait couramment (EX: a=VAL(a$) qui me parait très logique) et j'ajoute que j'utilise des noms de variable comme LABEL (EX: DIM edit_saisie%:LABEL edit_saisie , ce qui met mon label en rapport avec l'objet désigné par la variable). Conclusion: c'est bien ainsi. Sorry. | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 12:23 | |
| Bonjour Jean Claude. Ton ophtalmo est–il aussi PANORAMICIEN ? Sinon, tu dois user de beaucoup de patience pour lui expliquer qu’un $ n’est pas un dollar et qu’il n’aura pas son pourcentage ! | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 14:54 | |
| Bien vu, toi tu n'as pas besoin d'ophtalmo... Bon, il fait beau alors EXIT_PANORAMIC A+ | |
| | | Invité Invité
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 15:36 | |
| Bonjour Dans mon post, tu étais un peu concerné, et c'est celui de JL35 qui m'a interpellé. Je ne vais pas revenir en arrière pour lire, mais il disait qu'il n'était pas très sain de se servir de la même variable avec des attributs différents. Et comme dans un post plus ancien, (peut-être encore Papydall qui sème le trouble ) je crois avoir vu quelques remarques approchantes, je me dis qu'ils veulent foutre Panoramic en l'air. Jack n'aura pas besoin de faire un EXIT_PANORAMIC. Les membres s'en occupent eux-même. Panoramic va finir par faire J'ai édité pour corriger une faute à Papydall, avant qu'il explose. |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 17:09 | |
| @cosmos 70 Aujourd’hui, j’ai le moral au beau fixe. Tu peux faire autant de fauuuutes que tu veux. Je ne sèmerais plus le trouble. J’en ferais (peut-être) la récolte. ____________________________ Quelqu’un a dit EXIT_PANORAMIC ? C'est Moi je dis RESTARE_PANORAMIC ! | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 16 Sep 2012 - 17:30 | |
| Perso c'est en remplacement de TERMINATE qui est pas beau... ( tu as du vouloir dire RESTORE_PANORAMIC ) | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 18:20 | |
| C'est bien RESTARE en Latin ou en Italiano | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Dim 16 Sep 2012 - 19:04 | |
| Autant pour moi,Je croyais que tout était en anglais en prog... | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 20:14 | |
| - Citation :
- Quelqu’un a dit EXIT_PANORAMIC ? C'est
Quand Jack fait de l'humour, j'estime que çà mérite un rappel... Maintenant il fait nuit, donc RESTART_PANORAMIC. @Cosmos, je pense comme toi, actuellement Panoramic fait Boum ! . Et on va tous en profiter. A+ | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 20:49 | |
| Je me pose quelques questions sur les futures fonctions Panoramic: Jack as-tu prévu la possibilité d'avoir un tableau ou une dlist en retour de fonction ? | |
| | | Severin
Nombre de messages : 547 Localisation : Braunschweig / Germany Date d'inscription : 13/12/2010
| Sujet: Re: dynamique de numérotation Dim 16 Sep 2012 - 22:42 | |
| Ich habe getestet in SUB3 eine SUB4 erstellen. Da habe ich die lokalen Variablen mit übergeben. Es funktioniert. Super, danke Jack. Jetzt fehlt noch "Exit_Sub" I have tested in SUB3 create a SUB4. As I pass the local variable. It works. Great, thank you Jack. Now we need "Exit_Sub" J'ai testé en SUB3 créer un SUB4. Comme je passe la variable locale. Il fonctionne. Très bien, merci Jack. Maintenant nous avons besoin "Exit_Sub" - Code:
-
' *** TEST SUB-ROUTINEN ******************************************************** ' dim i% dim j% ' dim i$ dim j$ ' dim no% no% = 0 ' dim Form_nr% Form_nr% = no% i% = 10 ' j% = 20 ' ' ' *** Form 0000 erstellen ****************************************************** ' Top 0000,0 Left 0000,0 Width 0000,screen_x-100 Height 0000,screen_y-100 FONT_NAME 0000,"Courier NEW" FONT_SIZE 0000,08 color 0000,255,255,255 Caption 0000,"Form 0" ' ' *** Form 0001 erstellen ****************************************************** ' no% = 1 Form no% Left no%,150 Top no%,100 Width no%,screen_x-300 Height no%,screen_y-200 FONT_NAME no%,"Courier NEW" FONT_SIZE no%,08 color no%, 255,255,255 Caption no%,"Form 1" Form_nr% = no% Hide no% ' ' *** Form 0002 erstellen ****************************************************** ' no% = no%+1 Form no% Left no%,200 Top no%,200 Width no%,screen_x-300 Height no%,screen_y-200 FONT_NAME no%,"Courier NEW" FONT_SIZE no%,08 color no%, 255,255,255 Caption no%,"Form 2" Form_nr% = no% Hide no% ' ' *** Form 0003 erstellen ****************************************************** ' no% = no%+1 Form no% Left no%,200 Top no%,300 Width no%,screen_x-300 Height no%,screen_y-200 FONT_NAME no%,"Courier NEW" FONT_SIZE no%,08 color no%, 255,255,255 Caption no%,"Form 3" Form_nr% = no% Hide no% ' ' *** Werte auf Form 0000 ****************************************************** ' Print_Target_is 0000 ' print_locate 10,10 print i%," aus Hauptprogramm" : ' i% ist immer 10 ' print_locate 10,30 print j%," aus Hauptprogramm" : ' j% wird drei Drucke ersetzt seit der globalen Variable j% verändert ' ' *** SUB ERSTELLEN ************************************************************ ' Form_nr% = 1 TEST1(Form_nr%) :' Sprunglabel für SUB-Routine ' ' *** Werte auf Form 0000 ****************************************************** ' Print_Target_is 0000 ' print_locate 10,50 print i%," nach Test 1 " ' print_locate 10,70 print j%," nach Test 1 " ' ' *** SUB ERSTELLEN ************************************************************ ' Form_nr% = 2 TEST2(Form_nr%) :' Sprunglabel für SUB-Routine ' ' *** Werte auf Form 0000 ****************************************************** ' Print_Target_is 0000 ' print_locate 10,90 print i%," nach Test 2 " ' print_locate 10,110 print j%," nach Test 2 " ' ' *** SUB ERSTELLEN ************************************************************ ' Form_nr% = 3 TEST3(Form_nr%) :' Sprunglabel für SUB-Routine ' ' *** Werte auf Form 0000 ****************************************************** ' Print_Target_is 0000 ' print_locate 10,130 print i$ ' print_locate 10,150 print j$ ' end ' ' ****************************************************************************** ' ****************************************************************************** ' sub TEST1(Form_nr%) ' ' *** Variable in SUB-ROUTINE definieren ' dim_LOCAL k% dim_LOCAL l% ' ' *** Variable in SUB-POUTINE mit Werten füllen, aus dem Hauptprogramm ' k% = i% + 10 :' Diese Variable ist nur gültig in der Prozedur ' l% = j% + 20 :' Diese Variable ist nur gültig in der Prozedur ' ' *** Variablen der SUB-ROUTINE drucken ****************************************
show Form_nr% ' Print_Target_is Form_nr% ' print k%," aus Test1" ' print l%," aus Test1" ' print ' ' *** Bearbeitete Variablen an Hauptprogramm übergeben ' i% = k% ' j% = l% ' ' *** Variablen in der SUB-ROUTINE löschen ' FREE k% ' FREE l% ' ' *** Rücksprung aus SUB-ROUTINE zurück ' end_sub ' ' ****************************************************************************** ' ****************************************************************************** ' sub TEST2(Form_nr%) ' ' *** Variable in SUB-ROUTINE definieren, ist nur gültig in der Prozedur ******* ' dim_LOCAL k% dim_LOCAL l% ' ' *** Variable in SUB-POUTINE mit Werten füllen, aus dem Hauptprogramm ********* ' k% = i% + 10 ' l% = j% + 20 ' ' *** Variablen der SUB-ROUTINE drucken **************************************** ' show Form_nr% ' Print_Target_is Form_nr% ' print k%," aus Test2" ' print l%," aus Test2" ' print ' ' *** Bearbeitete Variablen an Hauptprogramm übergeben ************************* ' i% = k% ' j% = l% ' ' *** Variablen in der SUB-ROUTINE löschen ************************************* ' FREE k% ' FREE l% ' ' *** Rücksprung aus SUB-ROUTINE zurück **************************************** ' end_sub ' ' ****************************************************************************** ' *** Test der LOCAL-VARIABLEN ************************************************* ' sub TEST3(Form_nr%) ' ' *** Variable in SUB-ROUTINE definieren, ist nur gültig in der SUB ************ ' dim_LOCAL k$ dim_LOCAL l$ ' ' *** Variable in SUB-POUTINE mit Werten füllen, aus dem Hauptprogramm ********* ' k$ = " aus Test3" ' l$ = " aus Test3" ' ' *** Variablen der SUB-ROUTINE drucken **************************************** ' show Form_nr% ' Command_Target_is Form_nr%
Button 1003 Left 1003,100 Top 1003,100 Width 1003,200 Height 1003,50 FONT_NAME 1003,"Courier NEW" FONT_SIZE 1003,08 ' Caption 1003," BUTTON auf Form 3" ' Hide 1003 ' Print_Target_is 3 ' print k$," aus Test3" ' print l$," aus Test3" ' print ' ' *** Bearbeitete Variablen an Hauptprogramm übergeben ************************* ' i$ = k$ ' j$ = l$ ' ' *** SUB Test 4 erstellen und lokale Variablen mitnehmen ********************** ' TEST4(k$,l$) ' ' *** Variablen in der SUB-ROUTINE löschen ************************************* ' FREE k$ ' FREE l$ ' ' *** Rücksprung aus SUB-ROUTINE zurück **************************************** ' end_sub ' ' ****************************************************************************** ' *** Test SUB und übergabe LOCAL-VARIABLEN ************************************ ' sub TEST4(k$,l$) ' Print_Target_is 3 ' print_locate 1,60 ' print k$," aus Test4" ' print l$," aus Test4" ' print ' ' *** Rücksprung aus SUB-ROUTINE zurück **************************************** ' end_sub ' ' ****************************************************************************** ' ****************************************************************************** | |
| | | Contenu sponsorisé
| Sujet: Re: dynamique de numérotation | |
| |
| | | | dynamique de numérotation | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |