FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Programm Struktur Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
Programm Struktur Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Programm Struktur Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Programm Struktur Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Programm Struktur Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Programm Struktur Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Programm Struktur Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Programm Struktur Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Programm Struktur Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Programm Struktur Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Programm Struktur Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Programm Struktur Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Programm Struktur Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Programm Struktur Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Programm Struktur Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment :
SSD interne Crucial BX500 2,5″ SATA – 500 ...
Voir le deal
29.99 €

 

 Programm Struktur

Aller en bas 
2 participants
AuteurMessage
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Programm Struktur Empty
MessageSujet: Programm Struktur   Programm Struktur EmptyVen 14 Jan 2011 - 14:54

Hallo an alle,
hier die grobe Struktur von meinem Programm. Alle Formen sollen den gleichen Aufbau haben, damit der Nutzer sich an einen Ablauf gewöhnt. affraid
Da die Übersetzung in französisch nicht optimal ist, dann in englisch.
Was bedeutet "NGS" ? confused
Severin

Programm Struktur:

Variablen deklarieren

Erstellem Form 0 mit Menüpunkten

Sprung nach Click zu den Formen 1 bis 10

'..........
Form 1:
Form 1 anzeigen, mit Unterprogrammen
Programmteil der auf Form 1 bearbeitet wird
Form 1 beenden, zurück zur Form 0

'..........
Form 2:
Form 2 anzeigen, mit Unterprogrammen

Programmteil der auf Form 2 bearbeitet wird, wenn fertig dann

* Das verlassen mit Message ist ok, ohne Fehlermeldung
** Das verlassen mit Button gibt eine Fehlermeldung, ohne Absturz

Form 2 beenden mit Click, zurück zur Form 0

'..........
Form 3:
Form 3 anzeigen, mit Unterprogrammen
Programmteil der auf Form 3 bearbeitet wird
Form 3 beenden Click, zurück zur Form 0

'..........
Form 4:
Form 4 anzeigen, mit Unterprogrammen
Programmteil der auf Form 4 bearbeitet wird
Form 4 beenden Click, zurück zur Form 0

'..........
Form N:
Form N anzeigen, mit Unterprogrammen
Programmteil der auf Form N bearbeitet wird
Form N beenden Click, zurück zur Form 0

'..........
Unterprogramm:
Unterprogramme für Wiederholungen auf Formen 1 bis 10 mit gosub angesprungen
....
....
Rücksprung mit return


Hello everyone,
Here the rough structure of my program. All forms should have the same structure,
so that the user is accustomed to a routine. Since the translation in French is not optimal,
then in English. What does "NGS"?
Severin

Program structure:

Declare variables

Create Form 0 with menu items

Click to jump to the forms 1-10

'..........
Form 1:
View form 1, with subroutines
Part of the program is edited to form a
Form 1 complete, back to the form 0

'..........
Form 2:
View form 2, with subroutines

Part of the program is operated on Form 2, when done then

* The leave message is ok, no error message
** The left button with an error message without crashing

Form 2 complete, back to the form 0

'..........
Form 3:
View form 3, with subroutines
Part of the program is edited to form 3
Form 3 complete, back to the form 0

'..........
Form 4:
View form 4, with subroutines
Part of the program is edited to form 4
Form 4 complete, back to the form 0

'..........
Form N:
View form N, with subroutines
Part of the program is edited to form N
Type N complete, back to the form 0

'..........
Subroutine:
Subroutines for repeats on Form 1 to 10 are skipped gosub
....
....
Return with return
Revenir en haut Aller en bas
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptyVen 14 Jan 2011 - 18:31

Hallo an alle,
hier kommt die Praxis. Das Programm sollte sich an alle Bildschirme < 2000 Pixel anpassen.
Wenn nicht bitte Rückmeldung.

Test Menü "Einstellung":

Menüpunkte 0 bis 2 ohne Fehlermeldung.
Menüpunkte 3 bis 9 mit Fehlermeldung.

Wer hat eine Lösung für Menüpunkte 3 bis 9 ?

Severin


Hello everyone,
here comes the practice. The program should be adapted to all screens <2000 pixels.
If not please mail.

Test Setup menu:

Menu items without 0-2 error message.
Menu items 3 to 9 with an error message.

Who has a solution for menu items 3 to 9?

Severin

Code:
Revenir en haut Aller en bas
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptyVen 14 Jan 2011 - 18:33

Code:
REM LABEL FÜR HAUPTMENÜ DEFINIEREN
'
' *** EINSTELLUNGEN
label Zahl349
label Zahl520:label Zahl521:label Zahl522:label Zahl523:label Zahl524
label Zahl525:label Zahl526:label Zahl527:label Zahl528:label Zahl529
'
' ** REM LABEL UND VARIABELE FÜR UNTERFORMEN ANLEGEN
'
DIM Form_Nr%
'
Label Einstellungen
'
Label Menueschliessen
Label BUTTONzuruek
'
label RAHMENAUFFORM01:label RAHMENAUFFORM02:label RAHMENAUFFORM03
'
label SCHRIFTART09N:label SCHRIFTART10N:label SCHRIFTART11N:label SCHRIFTART12N
label SCHRIFTART09F:label SCHRIFTART10F:label SCHRIFTART11F:label SCHRIFTART12F
label SCHRIFTART15F
label SCHRIFTART09FU:label SCHRIFTART10FU:label SCHRIFTART11FU:label SCHRIFTART12FU
label SCHRIFTART15FU
'
label WEITER981
'
REM REAL "12,789"  VARIABLEN DEFINIEREN
DIM ZAEHLENi
DIM Bildbreite
DIM Bildhoehe
'
REM INTEGER "%" VARIABLEN DEFINIEREN
DIM i%
DIM hoehe%
DIM links%
DIM SCHRIFTART
DIM Nachricht%
'
' *** FESTE TEXTVARIABLEN AUF FORMEN DEFINIEREN
DIM FORM_TEXT$(9999)
'
DIM FORM_TEXT000$:FORM_TEXT000$ = " - PC-Zeit Programme - "
'
FORM_TEXT$(1349) = " END "
'
FORM_TEXT$(1520) = " - 0. Einstellungen -"
FORM_TEXT$(1521) = " - 1. Einstellungen -"
FORM_TEXT$(1522) = " - 2. Einstellungen -"
FORM_TEXT$(1523) = " - 3. Einstellungen -"
FORM_TEXT$(1524) = " - 4. Einstellungen -"
FORM_TEXT$(1525) = " - 5. Einstellungen -"
FORM_TEXT$(1526) = " - 6. Einstellungen -"
FORM_TEXT$(1527) = " - 7. Einstellungen -"
FORM_TEXT$(1528) = " - 8. Einstellungen -"
FORM_TEXT$(1529) = " - 9. Einstellungen -"
'
' *** FESTE TEXTVARIABLEN AUF FORMEN DEFINIEREN
DIM TEXT_AUF_FORM$(100)
'
TEXT_AUF_FORM$(060) = " - PC-Zeit Programme - "
'
' *** PROGRAMM STARTEN
' FORM            000 DEFINIEREN
color              000,0,255,0
width              000,INT(screen_x-0)
height            000,INT(screen_y-0)
caption            000,FORM_TEXT000$
border_normal      000
'
gosub RAHMENAUFFORM01
'
' *** ALLE UNTERFORMEN ERSTELLEN / VERSTECKEN
'
' *** Einstellungen für PC-Zeit
'
Form 1520:hide 1520:Form 1521:hide 1521:Form 1522:hide 1522:Form 1523:hide 1523
Form 1524:hide 1524:Form 1525:hide 1525:Form 1526:hide 1526:Form 1527:hide 1527
Form 1528:hide 1528:Form 1529:hide 1529
'
' *** STARTBILD ANZEIGEN AUF FORM 000
'
Command_target_is 000:ALPHA 3060:hide 3060
show    3060
top    3060,screen_y-screen_y + (screen_y/35)*5
left    3060,screen_x-(screen_x/1.4)
SCHRIFTART = 3060
'
Gosub Schriftart15F
'
caption 3060,TEXT_AUF_FORM$(060)
'
Command_Target_is 000
'
' *** Hauptmenü
main_menu 001
'
' *** RAHMEN AUF FORM 000 ERSTELLEN
Gosub RAHMENAUFFORM01

' *** ERSTELLEN VON 20 UNTERMENÜS
sub_menu 002:caption 002," Datei  "    :parent 002,001
sub_menu 020:caption 020," Einstellungen  "    :parent 020,001
'
' *** ERSTELLEN UNTERMENÜ  002
sub_menu 349:caption 349,FORM_TEXT$(1349):parent 349,002
'
' *** ERSTELLEN UNTERMENÜ  020
sub_menu 520:caption 520,FORM_TEXT$(1520):parent 520,020
sub_menu 521:caption 521,FORM_TEXT$(1521):parent 521,020
sub_menu 522:caption 522,FORM_TEXT$(1522):parent 522,020
sub_menu 523:caption 523,FORM_TEXT$(1523):parent 523,020
sub_menu 524:caption 524,FORM_TEXT$(1524):parent 524,020
sub_menu 525:caption 525,FORM_TEXT$(1525):parent 525,020
sub_menu 526:caption 526,FORM_TEXT$(1526):parent 526,020
sub_menu 527:caption 527,FORM_TEXT$(1527):parent 527,020
sub_menu 528:caption 528,FORM_TEXT$(1528):parent 528,020
sub_menu 529:caption 529,FORM_TEXT$(1529):parent 529,020
'
' *** SPRUNG NACH DEM KLICK
Gosub RAHMENAUFFORM01
'
on_click 349,Zahl349
on_click 520,Zahl520:on_click 521,Zahl521:on_click 522,Zahl522:on_click 523,Zahl523
on_click 524,Zahl524:on_click 525,Zahl525:on_click 526,Zahl526:on_click 527,Zahl527
on_click 528,Zahl528:on_click 529,Zahl529
end
'
' POGRAMM BEENDEN
Zahl349:
terminate
return
end
'
'
' *** Einstellungen 00.
Zahl520:
Form_Nr% = 1520
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
message "Form Einstellung 00"
'
' *** gosub BUTTONzuruek
'
gosub Menueschliessen
'
end
'
' *** Einstellungen 01.
Zahl521:
Form_Nr% = 1521
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
message "Form Einstellung 01"
'
' *** gosub BUTTONzuruek
'
gosub Menueschliessen
'
end
'
' *** Einstellungen 02.
Zahl522:
Form_Nr% = 1522
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
message "Form Einstellung 02"
'
' *** gosub BUTTONzuruek
'
gosub Menueschliessen
'
end
'
' *** Einstellungen 03.
Zahl523:
Form_Nr% = 1523
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 04.
Zahl524:
Form_Nr% = 1524
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 05.
Zahl525:
Form_Nr% = 1525
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 06.
Zahl526:
Form_Nr% = 1526
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 07.
Zahl527:
Form_Nr% = 1527
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 08.
Zahl528:
Form_Nr% = 1528
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 09.
Zahl529:
Form_Nr% = 1529
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
'
'
REM UNTERPROGRAMME FÜR GOSUB ROUTINEN MIT RÜCKSPRUNG
'
Einstellungen:
'
Gosub RAHMENAUFFORM01
caption  000,FORM_TEXT000$+FORM_TEXT$(Form_Nr%)
show        Form_Nr%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
hoehe%    = 56
links%    = 08
Bildhoehe = screen_y-(hoehe%+49)
COLOR      Form_Nr%,180,180,180
width      Form_Nr%,screen_x-(links%*2)
top        Form_Nr%,hoehe%
left        Form_Nr%,links%
border_hide Form_Nr%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
For i% = hoehe% TO Bildhoehe Step 2
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
height      Form_Nr%,i%
next i%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
return
'
BUTTONzuruek:
command_target_is Form_Nr%
Button      8001
top          8001,INT(screen_y-screen_y + (screen_y/35)*29)
left        8001,INT(screen_x-screen_x + 30)
width        8001,85
height      8001,25
SCHRIFTART = 8001
Gosub Schriftart11F
caption      8001,"zurück"
hint        8001,"beenden und zum Hauptmenü zurück"
on_click    8001, WEITER981
end
WEITER981:
command_target_is Form_Nr%
delete      8001
return
REM UNTERMENÜS SCHLIESSEN RÜCKKEHR AUF FORM 000
'
Menueschliessen:
For i% = Bildhoehe TO 0 Step -2
height  Form_Nr%,i%
next i%
hide    Form_Nr%
command_target_is 000
caption  000,FORM_TEXT000$
Gosub RAHMENAUFFORM03
Gosub RAHMENAUFFORM01
return
'
REM RAHMEN SCHWARZ AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM01:
2D_target_is 00000
2d_pen_color 0,0,0
REM LINIEN OBEN
2d_line 0,0,screen_x- 9,0
2d_line 3,3,screen_x-12,3
REM LINIEN LINKS
2d_line 0,0,0,screen_y-99
2d_line 3,3,3,screen_y-102
REM LINIEN RECHTS
2d_line screen_x- 9,0,screen_x- 9,screen_y- 99
2d_line screen_x-12,3,screen_x-12,screen_y-102
REM LINIEN UNTEN
2d_line 0,screen_y- 99,screen_x- 9,screen_y- 99
2d_line 3,screen_y-102,screen_x-12,screen_y-102
2d_pen_color 0,0,0
return
'
REM RAHMEN ROT AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM02:
2D_target_is 00000
2d_pen_color 255,0,0
REM LINIEN OBEN
2d_line 1,1,screen_x-10,1
2d_line 2,2,screen_x-11,2
REM LINIEN LINKS
2d_line 1,1,1,screen_y-100
2d_line 2,2,2,screen_y-101
REM LINIEN RECHTS
2d_line screen_x-10,1,screen_x-10,screen_y-100
2d_line screen_x-11,2,screen_x-11,screen_y-101
REM LINIEN UNTEN
2d_line 1,screen_y-100,screen_x-10,screen_y-100
2d_line 2,screen_y-101,screen_x-11,screen_y-101
2d_pen_color 0,0,0
return
'
REM RAHMEN GRÜN AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM03:
2D_target_is 00000
2d_pen_color 0,255,0
REM LINIEN OBEN
2d_line 1,1,screen_x-10,1
2d_line 2,2,screen_x-11,2
REM LINIEN LINKS
2d_line 1,1,1,screen_y-100
2d_line 2,2,2,screen_y-101
REM LINIEN RECHTS
2d_line screen_x-10,1,screen_x-10,screen_y-100
2d_line screen_x-11,2,screen_x-11,screen_y-101
REM LINIEN UNTEN
2d_line 1,screen_y-100,screen_x-10,screen_y-100
2d_line 2,screen_y-101,screen_x-11,screen_y-101
2d_pen_color 0,0,0
return
'
'
REM SCHRIFTART "Courier" GRÖSSE 09 Normal
Schriftart09N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Normal
Schriftart10N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Normal
Schriftart11N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Normal
Schriftart12N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 09 Fett
Schriftart09F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Fett
Schriftart10F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Fett
Schriftart11F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Fett
Schriftart12F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 15 Fett
Schriftart15F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,15
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 09 Fett Unterstrichen
Schriftart09FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Fett Unterstrichen
Schriftart10FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Fett Unterstrichen
Schriftart11FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Fett  Unterstrichen
Schriftart12FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 15 Fett  Unterstrichen
Schriftart15FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,15
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
Revenir en haut Aller en bas
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptyVen 14 Jan 2011 - 22:47

Hallo an alle,
die Fehlermeldung wird durch den Befehl "delete" verursacht.

Frage zu Button:

Der Button 8001 wird für Form 9 erstellt. Kann ich Button 8001 dann mit
command_target_is auf Form 8 anzeigen oder ist der dann an Form 9 gebunden ?

Wenn ich für jede Form einen Button erstelle, läuft das Programm fehlerfrei
so wie ich es wollte.


Hello everyone,
the error message is caused by the command "delete".

Question about Button:

The button 8001 is created for Form 9. I can then use Button 8001
command_target_is on Form 8 or is then bound to Form 9?

If I create a button for each Form, the program runs without errors
the way I wanted.
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptyVen 14 Jan 2011 - 23:32

Hallo, Severin,

Ich habe Dein Programm für den Punkt "3. Einstellungen" zum Laufen gebracht. Alle meine Korrecturen sind mit "' *** klaus" vermerkt. Wenn Du genau den Programmverlauf verfolgst, wirst Du sehen, dass ich, jedenfalls in diesem Programmzweig, die Verwendung von END entfernt habe. Ich wiederhole mich: das END-Kommando funktionniert nicht so, wie Du Dir das vorstellst. Der normale Programm-Aufbau in Panoramic sollte so aussehen:
1. alle LABEL-Kommandos
2. alle DIM-Kommandos
( Bemerkung: Punkte 1 und 2 können auch ausgetauscht werden)
3. alle Initialisierungen, Programmteile, die nur zu Beginn ausgeführt werden müssen, Aufbau des graphischen Interfaces (Forms, Buttons, Menus, ...)
4. das END Kommando !!!!!!!!!!!!!!!!!! Es sollte ausschliesslich hier, und nur ein einziges Mas, im Programm vorkommen. Vom Programm-Beginn bis zu diesem Punkt functionniert das Programm in einem Modus, der an die alten Basic-Versionen erinnert, die es damals unter MS_DOS gab, sowie andere alte Computerformen. Das END-Kommando kippt in den Windows-Modus um ! Dieser Modus ist das grosse Plus von Panoramic. Von diesem Punkt an wird das ganze Programm ausschliesslich von Events gesteuert, wie alle anderen Windows-Programme auch. Was ist ein Event ? Ein Klick auf einen Button, ein Menu oder ein anderes Objekt, eine Modifizierung einer Datenzelle, ein Timerablauf, ein Tastendruck von der Tastatur und vieles mehr. In Panoramic werden alle Events mit ON_xxx Kommandos angegeben, deren Parameter eine Objektnummer ist, gefolg von dem Namen einer Event-Routine. Diese Routine wird von PAnoramic aufgerufen, sowie des betreffende Event eintritt. Der Aufruf erfolgt durch die Simulation eines GOSUB Kommandos. Eine solche Routine muss also IMMER mit einem RETURN beendet werden, damit Panoramic weiter seine EVENTS verwalten kann.
5. alle Event-Routinen. Sie müssen mit einem Label beginnen, das in Punkt 1 mit dem Label-Kommando deklariert ist und mit einem ON_xxx Kommando in Panoramic als Event-Routine angemeldet ist. Sie müssen DYNAMISCH mit einem RETURN Kommando beendet werden. Kein END Kommando hat seinen Platz hier (siehe Punkt 4)
6. Alle internen Subroutines. Gleiche Bemerkungen wie für Punkt 5, abzüglich des ON_xxx Kommandos.

Zusätzliche Bemerkung: Eine Event-Routine kann ohne Weiteres interne Subroutines aufrufen. Es sollte jedoch streng darauf geachtet werden, dass auf keinen Fall eine Event-Routine von einer internen Subroutine oder von einer anderen Event-Routine aufgerufen werden kann. Dies führt in jedem Fall zu Reentrance-Problemen und soldet sich meistens mit sehr schwierig zu diagostizierenden Crashs.

Hier also Dein korrigiertes Programm (nur 3. Einstellungen):
Code:
REM LABEL FÜR HAUPTMENÜ DEFINIEREN
'
' *** EINSTELLUNGEN
label Zahl349
label Zahl520:label Zahl521:label Zahl522:label Zahl523:label Zahl524
label Zahl525:label Zahl526:label Zahl527:label Zahl528:label Zahl529
label Zahl523_X, BUTTONzuruek_X : ' *** klaus
'
' ** REM LABEL UND VARIABELE FÜR UNTERFORMEN ANLEGEN
'
DIM Form_Nr%
'
Label Einstellungen
'
Label Menueschliessen
Label BUTTONzuruek
'
label RAHMENAUFFORM01:label RAHMENAUFFORM02:label RAHMENAUFFORM03
'
label SCHRIFTART09N:label SCHRIFTART10N:label SCHRIFTART11N:label SCHRIFTART12N
label SCHRIFTART09F:label SCHRIFTART10F:label SCHRIFTART11F:label SCHRIFTART12F
label SCHRIFTART15F
label SCHRIFTART09FU:label SCHRIFTART10FU:label SCHRIFTART11FU:label SCHRIFTART12FU
label SCHRIFTART15FU
'
label WEITER981
'
REM REAL "12,789"  VARIABLEN DEFINIEREN
DIM ZAEHLENi
DIM Bildbreite
DIM Bildhoehe
'
REM INTEGER "%" VARIABLEN DEFINIEREN
DIM i%
DIM hoehe%
DIM links%
DIM SCHRIFTART
DIM Nachricht%
'
' *** FESTE TEXTVARIABLEN AUF FORMEN DEFINIEREN
DIM FORM_TEXT$(9999)
'
DIM FORM_TEXT000$:FORM_TEXT000$ = " - PC-Zeit Programme - "
'
FORM_TEXT$(1349) = " END "
'
FORM_TEXT$(1520) = " - 0. Einstellungen -"
FORM_TEXT$(1521) = " - 1. Einstellungen -"
FORM_TEXT$(1522) = " - 2. Einstellungen -"
FORM_TEXT$(1523) = " - 3. Einstellungen -"
FORM_TEXT$(1524) = " - 4. Einstellungen -"
FORM_TEXT$(1525) = " - 5. Einstellungen -"
FORM_TEXT$(1526) = " - 6. Einstellungen -"
FORM_TEXT$(1527) = " - 7. Einstellungen -"
FORM_TEXT$(1528) = " - 8. Einstellungen -"
FORM_TEXT$(1529) = " - 9. Einstellungen -"
'
' *** FESTE TEXTVARIABLEN AUF FORMEN DEFINIEREN
DIM TEXT_AUF_FORM$(100)
'
TEXT_AUF_FORM$(060) = " - PC-Zeit Programme - "
'
' *** PROGRAMM STARTEN
' FORM            000 DEFINIEREN
color              000,0,255,0
width              000,INT(screen_x-0)
height            000,INT(screen_y-0)
caption            000,FORM_TEXT000$
border_normal      000
'
gosub RAHMENAUFFORM01
'
' *** ALLE UNTERFORMEN ERSTELLEN / VERSTECKEN
'
' *** Einstellungen für PC-Zeit
'
Form 1520:hide 1520:Form 1521:hide 1521:Form 1522:hide 1522:Form 1523:hide 1523
Form 1524:hide 1524:Form 1525:hide 1525:Form 1526:hide 1526:Form 1527:hide 1527
Form 1528:hide 1528:Form 1529:hide 1529
'
' *** STARTBILD ANZEIGEN AUF FORM 000
'
Command_target_is 000:ALPHA 3060:hide 3060
show    3060
top    3060,screen_y-screen_y + (screen_y/35)*5
left    3060,screen_x-(screen_x/1.4)
SCHRIFTART = 3060
'
Gosub Schriftart15F
'
caption 3060,TEXT_AUF_FORM$(060)
'
Command_Target_is 000
'
' *** Hauptmenü
main_menu 001
'
' *** RAHMEN AUF FORM 000 ERSTELLEN
Gosub RAHMENAUFFORM01

' *** ERSTELLEN VON 20 UNTERMENÜS
sub_menu 002:caption 002," Datei  "    :parent 002,001
sub_menu 020:caption 020," Einstellungen  "    :parent 020,001
'
' *** ERSTELLEN UNTERMENÜ  002
sub_menu 349:caption 349,FORM_TEXT$(1349):parent 349,002
'
' *** ERSTELLEN UNTERMENÜ  020
sub_menu 520:caption 520,FORM_TEXT$(1520):parent 520,020
sub_menu 521:caption 521,FORM_TEXT$(1521):parent 521,020
sub_menu 522:caption 522,FORM_TEXT$(1522):parent 522,020
sub_menu 523:caption 523,FORM_TEXT$(1523):parent 523,020
sub_menu 524:caption 524,FORM_TEXT$(1524):parent 524,020
sub_menu 525:caption 525,FORM_TEXT$(1525):parent 525,020
sub_menu 526:caption 526,FORM_TEXT$(1526):parent 526,020
sub_menu 527:caption 527,FORM_TEXT$(1527):parent 527,020
sub_menu 528:caption 528,FORM_TEXT$(1528):parent 528,020
sub_menu 529:caption 529,FORM_TEXT$(1529):parent 529,020
'
' *** SPRUNG NACH DEM KLICK
Gosub RAHMENAUFFORM01
'
on_click 349,Zahl349
on_click 520,Zahl520:on_click 521,Zahl521:on_click 522,Zahl522:on_click 523,Zahl523
on_click 524,Zahl524:on_click 525,Zahl525:on_click 526,Zahl526:on_click 527,Zahl527
on_click 528,Zahl528:on_click 529,Zahl529
end
'
' POGRAMM BEENDEN
Zahl349:
terminate
return
end
'
'
' *** Einstellungen 00.
Zahl520:
Form_Nr% = 1520
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
message "Form Einstellung 00"
'
' *** gosub BUTTONzuruek
'
gosub Menueschliessen
'
end
'
' *** Einstellungen 01.
Zahl521:
Form_Nr% = 1521
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
message "Form Einstellung 01"
'
' *** gosub BUTTONzuruek
'
gosub Menueschliessen
'
end
'
' *** Einstellungen 02.
Zahl522:
Form_Nr% = 1522
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
message "Form Einstellung 02"
'
' *** gosub BUTTONzuruek
'
gosub Menueschliessen
'
end
'
' *** Einstellungen 03.
Zahl523:
Form_Nr% = 1523
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
return : ' *** klaus
Zahl523_X:
gosub Menueschliessen
return : ' *** klaus
end
' *** Einstellungen 04.
Zahl524:
Form_Nr% = 1524
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 05.
Zahl525:
Form_Nr% = 1525
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 06.
Zahl526:
Form_Nr% = 1526
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 07.
Zahl527:
Form_Nr% = 1527
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 08.
Zahl528:
Form_Nr% = 1528
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 09.
Zahl529:
Form_Nr% = 1529
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
'
'
REM UNTERPROGRAMME FÜR GOSUB ROUTINEN MIT RÜCKSPRUNG
'
Einstellungen:
'
Gosub RAHMENAUFFORM01
caption  000,FORM_TEXT000$+FORM_TEXT$(Form_Nr%)
show        Form_Nr%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
hoehe%    = 56
links%    = 08
Bildhoehe = screen_y-(hoehe%+49)
COLOR      Form_Nr%,180,180,180
width      Form_Nr%,screen_x-(links%*2)
top        Form_Nr%,hoehe%
left        Form_Nr%,links%
border_hide Form_Nr%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
For i% = hoehe% TO Bildhoehe Step 2
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
height      Form_Nr%,i%
next i%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
return
'
BUTTONzuruek:
command_target_is Form_Nr%
on_error_goto BUTTONzuruek_X  : ' *** klaus
Button      8001
BUTTONzuruek_X:                : ' *** klaus
off_error_goto                : ' *** klaus
show 8001                      : ' *** klaus
top          8001,INT(screen_y-screen_y + (screen_y/35)*29)
left        8001,INT(screen_x-screen_x + 30)
width        8001,85
height      8001,25
SCHRIFTART = 8001
Gosub Schriftart11F
caption      8001,"zurück"
hint        8001,"beenden und zum Hauptmenü zurück"
on_click    8001, WEITER981
return : *** klaus
end
WEITER981:
command_target_is Form_Nr%
' *** klaus delete      8001
' *** klaus start
hide 8001
select Form_Nr%
case 1523: goto ZAHL523_X
' usw
end_select
' *** klaus end
return
REM UNTERMENÜS SCHLIESSEN RÜCKKEHR AUF FORM 000
'
Menueschliessen:
For i% = Bildhoehe TO 0 Step -2
height  Form_Nr%,i%
next i%
hide    Form_Nr%
command_target_is 000
caption  000,FORM_TEXT000$
Gosub RAHMENAUFFORM03
Gosub RAHMENAUFFORM01
return
'
REM RAHMEN SCHWARZ AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM01:
2D_target_is 00000
2d_pen_color 0,0,0
REM LINIEN OBEN
2d_line 0,0,screen_x- 9,0
2d_line 3,3,screen_x-12,3
REM LINIEN LINKS
2d_line 0,0,0,screen_y-99
2d_line 3,3,3,screen_y-102
REM LINIEN RECHTS
2d_line screen_x- 9,0,screen_x- 9,screen_y- 99
2d_line screen_x-12,3,screen_x-12,screen_y-102
REM LINIEN UNTEN
2d_line 0,screen_y- 99,screen_x- 9,screen_y- 99
2d_line 3,screen_y-102,screen_x-12,screen_y-102
2d_pen_color 0,0,0
return
'
REM RAHMEN ROT AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM02:
2D_target_is 00000
2d_pen_color 255,0,0
REM LINIEN OBEN
2d_line 1,1,screen_x-10,1
2d_line 2,2,screen_x-11,2
REM LINIEN LINKS
2d_line 1,1,1,screen_y-100
2d_line 2,2,2,screen_y-101
REM LINIEN RECHTS
2d_line screen_x-10,1,screen_x-10,screen_y-100
2d_line screen_x-11,2,screen_x-11,screen_y-101
REM LINIEN UNTEN
2d_line 1,screen_y-100,screen_x-10,screen_y-100
2d_line 2,screen_y-101,screen_x-11,screen_y-101
2d_pen_color 0,0,0
return
'
REM RAHMEN GRÜN AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM03:
2D_target_is 00000
2d_pen_color 0,255,0
REM LINIEN OBEN
2d_line 1,1,screen_x-10,1
2d_line 2,2,screen_x-11,2
REM LINIEN LINKS
2d_line 1,1,1,screen_y-100
2d_line 2,2,2,screen_y-101
REM LINIEN RECHTS
2d_line screen_x-10,1,screen_x-10,screen_y-100
2d_line screen_x-11,2,screen_x-11,screen_y-101
REM LINIEN UNTEN
2d_line 1,screen_y-100,screen_x-10,screen_y-100
2d_line 2,screen_y-101,screen_x-11,screen_y-101
2d_pen_color 0,0,0
return
'
'
REM SCHRIFTART "Courier" GRÖSSE 09 Normal
Schriftart09N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Normal
Schriftart10N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Normal
Schriftart11N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Normal
Schriftart12N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 09 Fett
Schriftart09F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Fett
Schriftart10F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Fett
Schriftart11F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Fett
Schriftart12F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 15 Fett
Schriftart15F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,15
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 09 Fett Unterstrichen
Schriftart09FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Fett Unterstrichen
Schriftart10FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Fett Unterstrichen
Schriftart11FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Fett  Unterstrichen
Schriftart12FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 15 Fett  Unterstrichen
Schriftart15FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,15
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'

A tous les Panoramiciens de langue française: je ne traduirai pas ce n-ième post, qui ne fait que reprendre, presque textuellement, ce que je prêche depuis longtemps dans ce forum, dans des sujets ayant un rapport avec le mode linéaire/mode évènementiel, ancien basic/mode Windows etc. Juste pour info: dans le programme soumis par Severin, toutes les lignes du menu de droite à partir de la ligne "3. Einstellungen" provoquaient un crash - j'ai corrigé le programme pour cette ligne qui marche maintenant.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptySam 15 Jan 2011 - 0:50

Hallo Klaus,
hier die neue Variante, die läuft. Fehler sind wahrscheinlich der Befehl delete und/oder
der Versuch einen Button auf verschiedene Formen anzuzeigen.
Danke für deine Bemühungen. Es ist sehr schwer sich in die Struktur von PANORAMIC einzuarbeiten.
Kaum Dokumentation, dann in fremder Spracheund die Beispiele im Forum laufen alle nur auf Form 0.
Wie du bemerkt hast, habe ich sehr großzügig den Nummerkreis für N = max. 9999 gewählt.
Das soll Erweiterungen einfacher machen.
Ich habe eine neue Variable für Button N eingeführt.
Die sub "BUTTONzuruek" angepaßt. Das war alles.
Danke an alle die mir geholfen haben. Ich werde wahrscheinlich noch mehrere Fagen haben.
Auch wollte ich Jack nicht verärgern (Sprachverständnis).
Danke Severin Very Happy

Hi Klaus,
here the new version that is running. Errors are probably the delete command and / or
the attempt to display a button on various forms.
Thank you for your efforts. It is very difficult to incorporate into the structure of PANORAMIC.
Hardly documentation, in foreign Spracheund the examples in the forum only to run any form 0th
As you noticed, I have very large number range for the N = max. Selected 9999th
The enhancements will make it easier.
I have introduced a new variable for Button N.
The sub "BUTTONzuruek" adapted. That was all.
Thanks to all who have helped me. I will probably have several more Fagen.
I also wanted to not annoy Jack (language understanding).
Thank Severin Very Happy



Code:
REM LABEL FÜR HAUPTMENÜ DEFINIEREN
'
' *** EINSTELLUNGEN
label Zahl349
label Zahl520:label Zahl521:label Zahl522:label Zahl523:label Zahl524
label Zahl525:label Zahl526:label Zahl527:label Zahl528:label Zahl529
'
' ** REM LABEL UND VARIABELE FÜR UNTERFORMEN ANLEGEN
'
DIM Form_Nr%
DIM Button_Nr%
'
Label Einstellungen
'
Label Menueschliessen
'
Label BUTTONzuruek
'
label RAHMENAUFFORM01:label RAHMENAUFFORM02:label RAHMENAUFFORM03
'
label SCHRIFTART09N:label SCHRIFTART10N:label SCHRIFTART11N:label SCHRIFTART12N
label SCHRIFTART09F:label SCHRIFTART10F:label SCHRIFTART11F:label SCHRIFTART12F
label SCHRIFTART15F
label SCHRIFTART09FU:label SCHRIFTART10FU:label SCHRIFTART11FU:label SCHRIFTART12FU
label SCHRIFTART15FU
'
label WEITER989
label WEITER990
'
REM REAL "12,789"  VARIABLEN DEFINIEREN
DIM ZAEHLENi
DIM Bildbreite
DIM Bildhoehe
'
REM INTEGER "%" VARIABLEN DEFINIEREN
DIM i%
DIM hoehe%
DIM links%
DIM SCHRIFTART
DIM Nachricht%
'
' *** FESTE TEXTVARIABLEN AUF FORMEN DEFINIEREN
DIM FORM_TEXT$(9999)
'
DIM FORM_TEXT000$:FORM_TEXT000$ = " - PC-Zeit Programme - "
'
FORM_TEXT$(1349) = " END "
'
FORM_TEXT$(1520) = " - 0. Einstellungen -"
FORM_TEXT$(1521) = " - 1. Einstellungen -"
FORM_TEXT$(1522) = " - 2. Einstellungen -"
FORM_TEXT$(1523) = " - 3. Einstellungen -"
FORM_TEXT$(1524) = " - 4. Einstellungen -"
FORM_TEXT$(1525) = " - 5. Einstellungen -"
FORM_TEXT$(1526) = " - 6. Einstellungen -"
FORM_TEXT$(1527) = " - 7. Einstellungen -"
FORM_TEXT$(1528) = " - 8. Einstellungen -"
FORM_TEXT$(1529) = " - 9. Einstellungen -"
'
' *** FESTE TEXTVARIABLEN AUF FORMEN DEFINIEREN
DIM TEXT_AUF_FORM$(100)
'
TEXT_AUF_FORM$(060) = " - PC-Zeit Programme - "
'
' *** PROGRAMM STARTEN
' FORM            000 DEFINIEREN
color              000,0,255,0
width              000,INT(screen_x-0)
height            000,INT(screen_y-0)
caption            000,FORM_TEXT000$
border_normal      000
'
gosub RAHMENAUFFORM01
'
' *** ALLE UNTERFORMEN ERSTELLEN / VERSTECKEN
'
' *** Einstellungen für PC-Zeit
'
Form 1520:hide 1520:Form 1521:hide 1521:Form 1522:hide 1522:Form 1523:hide 1523
Form 1524:hide 1524:Form 1525:hide 1525:Form 1526:hide 1526:Form 1527:hide 1527
Form 1528:hide 1528:Form 1529:hide 1529
'
' *** STARTBILD ANZEIGEN AUF FORM 000
'
Command_target_is 000:ALPHA 3060:hide 3060
show    3060
top    3060,screen_y-screen_y + (screen_y/35)*5
left    3060,screen_x-(screen_x/1.4)
SCHRIFTART = 3060
'
Gosub Schriftart15F
'
caption 3060,TEXT_AUF_FORM$(060)
'
Command_Target_is 000
'
' *** Hauptmenü
main_menu 001
'
' *** RAHMEN AUF FORM 000 ERSTELLEN
Gosub RAHMENAUFFORM01

' *** ERSTELLEN VON 20 UNTERMENÜS
sub_menu 002:caption 002," Datei  "    :parent 002,001
sub_menu 020:caption 020," Einstellungen  "    :parent 020,001
'
' *** ERSTELLEN UNTERMENÜ  002
sub_menu 349:caption 349,FORM_TEXT$(1349):parent 349,002
'
' *** ERSTELLEN UNTERMENÜ  020
sub_menu 520:caption 520,FORM_TEXT$(1520):parent 520,020
sub_menu 521:caption 521,FORM_TEXT$(1521):parent 521,020
sub_menu 522:caption 522,FORM_TEXT$(1522):parent 522,020
sub_menu 523:caption 523,FORM_TEXT$(1523):parent 523,020
sub_menu 524:caption 524,FORM_TEXT$(1524):parent 524,020
sub_menu 525:caption 525,FORM_TEXT$(1525):parent 525,020
sub_menu 526:caption 526,FORM_TEXT$(1526):parent 526,020
sub_menu 527:caption 527,FORM_TEXT$(1527):parent 527,020
sub_menu 528:caption 528,FORM_TEXT$(1528):parent 528,020
sub_menu 529:caption 529,FORM_TEXT$(1529):parent 529,020
'
' *** SPRUNG NACH DEM KLICK
Gosub RAHMENAUFFORM01
'
on_click 349,Zahl349
on_click 520,Zahl520:on_click 521,Zahl521:on_click 522,Zahl522:on_click 523,Zahl523
on_click 524,Zahl524:on_click 525,Zahl525:on_click 526,Zahl526:on_click 527,Zahl527
on_click 528,Zahl528:on_click 529,Zahl529
end
'
' POGRAMM BEENDEN
Zahl349:
terminate
return
end
'
'
' *** Einstellungen 00.
Zahl520:
Form_Nr% = 1520
Button_Nr% = 2520    :REM  neue Variable für SUB  BUTTONzuruek
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
'  message "Form Einstellung 00"
'
gosub BUTTONzuruek
'
gosub Menueschliessen
'
end
'
' *** Einstellungen 01.
Zahl521:
Form_Nr% = 1521
Button_Nr% = 2521    :REM  neue Variable für SUB  BUTTONzuruek
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
'  message "Form Einstellung 01"
'
gosub BUTTONzuruek
'
gosub Menueschliessen
'
end
'
' *** Einstellungen 02.
Zahl522:
Form_Nr% = 1522
Button_Nr% = 2522    :REM  neue Variable für SUB  BUTTONzuruek
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
' message "Form Einstellung 02"
'
gosub BUTTONzuruek
'
gosub Menueschliessen
'
return
'
' *** Einstellungen 03.
Zahl523:
Form_Nr% = 1523
Button_Nr% = 2523
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
'
' *** Einstellungen 04.
Zahl524:
Form_Nr% = 1524
Button_Nr% = 2524
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 05.
Zahl525:
Form_Nr% = 1525
Button_Nr% = 2525
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 06.
Zahl526:
Form_Nr% = 1526
Button_Nr% = 2526
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 07.
Zahl527:
Form_Nr% = 1527
Button_Nr% = 2527
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 08.
Zahl528:
Form_Nr% = 1528
Button_Nr% = 2528
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
' *** Einstellungen 09.
Zahl529:
Form_Nr%  = 1529
Button_Nr% = 2529
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
gosub Menueschliessen
end
'
'
REM UNTERPROGRAMME FÜR GOSUB ROUTINEN MIT RÜCKSPRUNG
'
Einstellungen:
'
Gosub RAHMENAUFFORM01
caption  000,FORM_TEXT000$+FORM_TEXT$(Form_Nr%)
show        Form_Nr%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
hoehe%    = 56
links%    = 08
Bildhoehe = screen_y-(hoehe%+49)
COLOR      Form_Nr%,180,180,180
width      Form_Nr%,screen_x-(links%*2)
top        Form_Nr%,hoehe%
left        Form_Nr%,links%
border_hide Form_Nr%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
For i% = hoehe% TO Bildhoehe Step 2
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
height      Form_Nr%,i%
next i%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
return
'
' ******
BUTTONzuruek:
command_target_is Form_Nr%
Button            Button_Nr%        :REM  neue Variable für SUB  BUTTONzuruek
on_error_goto WEITER989

WEITER989:
command_target_is Form_Nr%
top          Button_Nr%,INT(screen_y-screen_y + (screen_y/35)*29)
left        Button_Nr%,INT(screen_x-screen_x + 30)
width        Button_Nr%,85
height      Button_Nr%,25
SCHRIFTART = Button_Nr%
Gosub Schriftart11F
caption      Button_Nr%,"zurück"
hint        Button_Nr%,"beenden und zum Hauptmenü zurück"
'
command_target_is Form_Nr%
show        Button_Nr%
'
on_click    Button_Nr%, WEITER990
end
'
WEITER990:
command_target_is Form_Nr%
hide        Button_Nr%
return
'
' *** UNTERMENÜS SCHLIESSEN RÜCKKEHR AUF FORM 000
'
Menueschliessen:
For i% = Bildhoehe TO 0 Step -2
height  Form_Nr%,i%
next i%
hide    Form_Nr%
command_target_is 000
caption  000,FORM_TEXT000$
Gosub RAHMENAUFFORM03
Gosub RAHMENAUFFORM01
return
'
REM RAHMEN SCHWARZ AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM01:
2D_target_is 00000
2d_pen_color 0,0,0
REM LINIEN OBEN
2d_line 0,0,screen_x- 9,0
2d_line 3,3,screen_x-12,3
REM LINIEN LINKS
2d_line 0,0,0,screen_y-99
2d_line 3,3,3,screen_y-102
REM LINIEN RECHTS
2d_line screen_x- 9,0,screen_x- 9,screen_y- 99
2d_line screen_x-12,3,screen_x-12,screen_y-102
REM LINIEN UNTEN
2d_line 0,screen_y- 99,screen_x- 9,screen_y- 99
2d_line 3,screen_y-102,screen_x-12,screen_y-102
2d_pen_color 0,0,0
return
'
REM RAHMEN ROT AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM02:
2D_target_is 00000
2d_pen_color 255,0,0
REM LINIEN OBEN
2d_line 1,1,screen_x-10,1
2d_line 2,2,screen_x-11,2
REM LINIEN LINKS
2d_line 1,1,1,screen_y-100
2d_line 2,2,2,screen_y-101
REM LINIEN RECHTS
2d_line screen_x-10,1,screen_x-10,screen_y-100
2d_line screen_x-11,2,screen_x-11,screen_y-101
REM LINIEN UNTEN
2d_line 1,screen_y-100,screen_x-10,screen_y-100
2d_line 2,screen_y-101,screen_x-11,screen_y-101
2d_pen_color 0,0,0
return
'
REM RAHMEN GRÜN AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM03:
2D_target_is 00000
2d_pen_color 0,255,0
REM LINIEN OBEN
2d_line 1,1,screen_x-10,1
2d_line 2,2,screen_x-11,2
REM LINIEN LINKS
2d_line 1,1,1,screen_y-100
2d_line 2,2,2,screen_y-101
REM LINIEN RECHTS
2d_line screen_x-10,1,screen_x-10,screen_y-100
2d_line screen_x-11,2,screen_x-11,screen_y-101
REM LINIEN UNTEN
2d_line 1,screen_y-100,screen_x-10,screen_y-100
2d_line 2,screen_y-101,screen_x-11,screen_y-101
2d_pen_color 0,0,0
return
'
'
REM SCHRIFTART "Courier" GRÖSSE 09 Normal
Schriftart09N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Normal
Schriftart10N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Normal
Schriftart11N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Normal
Schriftart12N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 09 Fett
Schriftart09F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Fett
Schriftart10F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Fett
Schriftart11F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Fett
Schriftart12F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 15 Fett
Schriftart15F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,15
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 09 Fett Unterstrichen
Schriftart09FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Fett Unterstrichen
Schriftart10FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Fett Unterstrichen
Schriftart11FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Fett  Unterstrichen
Schriftart12FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 15 Fett  Unterstrichen
Schriftart15FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,15
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptySam 15 Jan 2011 - 1:32

Wie ich sehe, hast Du meine Änderung der Behandlung des buttons 8001 angenommen - gut. Du hast aber Deine Verwendung des END_Kommandos nicht geändert. Solange das gut geht, sei zufrieden damit. Wenn Du aber meine Ausführungen aufmerksam durchliest, wirst Du merken, dass dies Spätfolgen haben kann, da Du die ganez Event-Verwaltung von Panoramic damit durcheinander bringen kannst. Und der Beweis ? In Deiner letzten Version, klicke mal auf eine beliebige Option im Menu Einstellungen. Dann nicht auf Zurück klicken, sondern wieder auf Menu Einstellungen, dann eine andere Option wählen. Mache das 2 oder 3 mal, und klicke dann erst auf Zurück.

Na, was sagst Du nun ? Es bleiben alte Fenster zurück, ohne des Zurück-button... Und warum ? Weil Panoramic nicht sauber alles zurückbilden kann, da Du die Event-Kette unterbrochen hast. Hättest Du einen Timer zusätzlich, wäre mit Sicherheit das Programm noch viel früher zusammengebrochen.

Ich weiss, es ist nicht angenehm, seine Vorstellungen revidieren zu müssen. Est ist aber offensichtlich, dass Deine Vorstellungen von des Funktionsweise von Panoramic nicht ganz den Tatsachen entspechen, und ich glaube, es wäre Dir sicher für weiteres Programmieren nützlich, Dir die in meinem Post beschriebene Programmiertechnik verständlich zu machen und anzuwenden.

Nimm dies bitte als freundlichen Hinweis eines alt-erfahrenen Informatikers auf. Ich habe 40 Jahr Studien- und Berufserfahrung in Informatik, habe an Universitäten in Deutschland und Brasilien gelehrt und mehr als 30 Jahre in der Privatwirtschaft erst als Systemingenieur, später als freiberuflicher Informatikberater gearbeitet. Ich will mich damit nicht gross machen, und es ist das erste Mal, dass ich in diesem Forum darüber spreche. Ich erwähne es nur, damit Du siehst, dass meine Ratschläge sur Nutzung von Panoramic keine oberflächlichen Launen eines Neulings sind, sondern von recht gutem Wissen um die Innerreien von Windows und Panoramic motiviert sind, Also, nichts fur ungut, ok, ?
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptySam 15 Jan 2011 - 14:39

Hallo Klaus,
du hast recht. Ich habe in meiner Neuen Version unzählig geklickt. Ergebnis Absturz.
Leider bin ich ein Praktiker und muß selbst scheitern! So langsam verstehe ich das Prinzip
von Panoramic. Dreh und Angelpunkt ist das Menü. Alle weiteren Programmteile müssen also
zum Menü zurückkehren durch "return". Wenn es deine Zeit erlaubt, schau noch einmal über das
Programm. Ich habe einige "end" mit "pseudoend" markiert. Hier kann doch das end entfallen ?
Für die anderen stelle ich das überarbeitete Programm ein. Dadurch wird dein Hinweis mit dem "end"
verständlicher.
Danke und Gruß Severin

Hi Klaus,
you're right. I clicked in my countless new version. Score crash.
Unfortunately, I am a practitioner and must fail for yourself! I am beginning to understand the principle
by Panoramic. The heart of the menu. All other program components have to
return to the menu by "return". If your time allows, look over again the
Program. I have some "end" marked "pseudoend. Here, but the final account?
For the other I set the revised program. This is your note with the "end"
understand.
Thanks and greetings Severin

Code:
REM LABEL FÜR HAUPTMENÜ DEFINIEREN
'
' *** EINSTELLUNGEN
label Zahl349
label Zahl520:label Zahl520_01
label Zahl521:label Zahl521_01
label Zahl522:label Zahl522_01
label Zahl523:label Zahl523_01
label Zahl524:label Zahl524_01
label Zahl525:label Zahl525_01
label Zahl526:label Zahl526_01
label Zahl527:label Zahl527_01
label Zahl528:label Zahl528_01
label Zahl529:label Zahl529_01
label BUTTONzuruek_X                                              : ' *** klaus
'
' ** REM LABEL UND VARIABELE FÜR UNTERFORMEN ANLEGEN
'
DIM Form_Nr%
DIM Button_Nr%                                                : ' Neu Variable
'
Label Einstellungen
'
Label Menueschliessen
Label BUTTONzuruek
'
label RAHMENAUFFORM01:label RAHMENAUFFORM02:label RAHMENAUFFORM03
'
label SCHRIFTART09N:label SCHRIFTART10N:label SCHRIFTART11N:label SCHRIFTART12N
label SCHRIFTART09F:label SCHRIFTART10F:label SCHRIFTART11F:label SCHRIFTART12F
label SCHRIFTART15F
label SCHRIFTART09FU:label SCHRIFTART10FU:label SCHRIFTART11FU:label SCHRIFTART12FU
label SCHRIFTART15FU
'
label WEITER981
'
' *** REAL "12,789"  VARIABLEN DEFINIEREN
DIM ZAEHLENi
DIM Bildbreite
DIM Bildhoehe
'
' *** INTEGER "%" VARIABLEN DEFINIEREN
DIM i%
DIM hoehe%
DIM links%
DIM SCHRIFTART
DIM Nachricht%
'
' *** FESTE TEXTVARIABLEN AUF FORMEN DEFINIEREN
DIM FORM_TEXT$(9999)
'
DIM FORM_TEXT000$:FORM_TEXT000$ = " - PC-Zeit Programme - "
'
FORM_TEXT$(1349) = " END "
'
FORM_TEXT$(1520) = " - 0. Einstellungen -"
FORM_TEXT$(1521) = " - 1. Einstellungen -"
FORM_TEXT$(1522) = " - 2. Einstellungen -"
FORM_TEXT$(1523) = " - 3. Einstellungen -"
FORM_TEXT$(1524) = " - 4. Einstellungen -"
FORM_TEXT$(1525) = " - 5. Einstellungen -"
FORM_TEXT$(1526) = " - 6. Einstellungen -"
FORM_TEXT$(1527) = " - 7. Einstellungen -"
FORM_TEXT$(1528) = " - 8. Einstellungen -"
FORM_TEXT$(1529) = " - 9. Einstellungen -"
'
' *** FESTE TEXTVARIABLEN AUF FORMEN DEFINIEREN
DIM TEXT_AUF_FORM$(100)
'
TEXT_AUF_FORM$(060) = " - PC-Zeit Programme - "
'
' *** PROGRAMM STARTEN
' FORM            000 DEFINIEREN
color              000,0,255,0
width              000,INT(screen_x-0)
height            000,INT(screen_y-0)
caption            000,FORM_TEXT000$
border_normal      000
'
gosub RAHMENAUFFORM01
'
' *** ALLE UNTERFORMEN ERSTELLEN / VERSTECKEN
'
' *** Einstellungen für PC-Zeit
'
Form 1520:hide 1520:Form 1521:hide 1521:Form 1522:hide 1522:Form 1523:hide 1523
Form 1524:hide 1524:Form 1525:hide 1525:Form 1526:hide 1526:Form 1527:hide 1527
Form 1528:hide 1528:Form 1529:hide 1529
'
' *** STARTBILD ANZEIGEN AUF FORM 000
'
Command_target_is 000:ALPHA 3060:hide 3060
show        3060
top          3060,INT(screen_y-screen_y + (screen_y/35)*5)
left        3060,INT(screen_x-(screen_x/1.4))
SCHRIFTART = 3060
'
Gosub Schriftart15F
'
caption 3060,TEXT_AUF_FORM$(060)
'
Command_Target_is 000
'
' *** Hauptmenü
main_menu 001
'
' *** RAHMEN AUF FORM 000 ERSTELLEN
Gosub RAHMENAUFFORM01
'
' *** ERSTELLEN VON 20 UNTERMENÜS
sub_menu 002:caption 002," Datei  "    :parent 002,001
sub_menu 020:caption 020," Einstellungen  "    :parent 020,001
'
' *** ERSTELLEN UNTERMENÜ  002
sub_menu 349:caption 349,FORM_TEXT$(1349):parent 349,002
'
' *** ERSTELLEN UNTERMENÜ  020
sub_menu 520:caption 520,FORM_TEXT$(1520):parent 520,020
sub_menu 521:caption 521,FORM_TEXT$(1521):parent 521,020
sub_menu 522:caption 522,FORM_TEXT$(1522):parent 522,020
sub_menu 523:caption 523,FORM_TEXT$(1523):parent 523,020
sub_menu 524:caption 524,FORM_TEXT$(1524):parent 524,020
sub_menu 525:caption 525,FORM_TEXT$(1525):parent 525,020
sub_menu 526:caption 526,FORM_TEXT$(1526):parent 526,020
sub_menu 527:caption 527,FORM_TEXT$(1527):parent 527,020
sub_menu 528:caption 528,FORM_TEXT$(1528):parent 528,020
sub_menu 529:caption 529,FORM_TEXT$(1529):parent 529,020
'
' *** SPRUNG NACH DEM KLICK
Gosub RAHMENAUFFORM01
'
on_click 349,Zahl349
'
on_click 520,Zahl520:on_click 521,Zahl521:on_click 522,Zahl522
on_click 523,Zahl523:on_click 524,Zahl524:on_click 525,Zahl525
on_click 526,Zahl526:on_click 527,Zahl527:on_click 528,Zahl528
on_click 529,Zahl529
end
'
' *** POGRAMM BEENDEN
Zahl349:
terminate
return
end
'
'
' *** Einstellungen 00.
Zahl520:
Form_Nr% = 1520
Button_Nr% = 2520
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
gosub BUTTONzuruek
'
'  message "Form Einstellung 00"
'  Hier Programmteil auf Form 1520 -
'  Hier Programmteil auf Form 1520 -
'  Hier Programmteil auf Form 1520 -
'  Hier Programmteil auf Form 1520 -
'
return
'
Zahl520_01:

gosub Menueschliessen
'
return
end                                                              : ' Pseudoend
'
' *** Einstellungen 01.
Zahl521:
Form_Nr% = 1521
Button_Nr% = 2521
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
gosub BUTTONzuruek
'
return
'
Zahl521_01:
'
gosub Menueschliessen
'
return
end                                                              : ' Pseudoend
'
' *** Einstellungen 02.
Zahl522:
Form_Nr% = 1522
Button_Nr% = 2522
'
gosub Einstellungen
'
command_target_is Form_Nr%
'
gosub BUTTONzuruek
'
return
'
Zahl522_01:
'
gosub Menueschliessen
'
return
end
'
' *** Einstellungen 03.
Zahl523:
Form_Nr%  = 1523
Button_Nr% = 2523

gosub Einstellungen

command_target_is Form_Nr%

gosub BUTTONzuruek

return : ' *** klaus

Zahl523_01:

gosub Menueschliessen

return : ' *** klaus
end
' *** Einstellungen 04.
Zahl524:
Form_Nr% = 1524
Button_Nr% = 2524
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
return
Zahl524_01:
gosub Menueschliessen
return
end
' *** Einstellungen 05.
Zahl525:
Form_Nr% = 1525
Button_Nr% = 2525
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
return
Zahl525_01:
gosub Menueschliessen
return
end
' *** Einstellungen 06.
Zahl526:
Form_Nr% = 1526
Button_Nr% = 2526
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
return
Zahl526_01:
gosub Menueschliessen
return
end
' *** Einstellungen 07.
Zahl527:
Form_Nr% = 1527
Button_Nr% = 2527
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
return
Zahl527_01:
gosub Menueschliessen
return
end
' *** Einstellungen 08.
Zahl528:
Form_Nr% = 1528
Button_Nr% = 2528
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
return
Zahl528_01:
gosub Menueschliessen
return
end
' *** Einstellungen 09.
Zahl529:
Form_Nr% = 1529
Button_Nr% = 2529
gosub Einstellungen
command_target_is Form_Nr%
gosub BUTTONzuruek
return
Zahl529_01:
gosub Menueschliessen
return
end
'
'
REM UNTERPROGRAMME FÜR GOSUB ROUTINEN MIT RÜCKSPRUNG
'
Einstellungen:
'
Gosub RAHMENAUFFORM01
caption  000,FORM_TEXT000$+FORM_TEXT$(Form_Nr%)
show        Form_Nr%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
hoehe%    = 56
links%    = 08
Bildhoehe =        INT(screen_y-(hoehe%+49))
COLOR      Form_Nr%,180,180,180
width      Form_Nr%,INT(screen_x-(links%*2))
top        Form_Nr%,hoehe%
left        Form_Nr%,links%
border_hide Form_Nr%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
For i% = hoehe% TO Bildhoehe Step 2
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
height      Form_Nr%,i%
next i%
Gosub RAHMENAUFFORM01
Gosub RAHMENAUFFORM02
return
'
BUTTONzuruek:
command_target_is Form_Nr%

on_error_goto BUTTONzuruek_X    :' klaus "Sprung wenn Fehler" zu BUTTONzurück_X

Button      Button_Nr%

BUTTONzuruek_X:                                                  : ' *** klaus
'
off_error_goto                              : ' klaus  "hebt on_error_goto auf"
'
show Button_Nr%                                                  : ' *** klaus
'
top          Button_Nr%,INT(screen_y-screen_y + (screen_y/35)*29)
left        Button_Nr%,INT(screen_x-screen_x + 30)
width        Button_Nr%,85
height      Button_Nr%,25
SCHRIFTART = Button_Nr%
Gosub Schriftart11F
caption      Button_Nr%,"zurück"
hint        Button_Nr%,"beenden und zum Hauptmenü zurück"
on_click    Button_Nr%, WEITER981                        : ' warten auf Click
'
return                                                            :' *** klaus
'
end
WEITER981:
command_target_is Form_Nr%
hide Button_Nr%
select Form_Nr%
'
case 1520: goto Zahl520_01
case 1521: goto Zahl521_01
case 1522: goto Zahl522_01
case 1523: goto Zahl523_01
case 1524: goto Zahl524_01
case 1525: goto Zahl525_01
case 1526: goto Zahl526_01
case 1527: goto Zahl527_01
case 1528: goto Zahl528_01
case 1529: goto Zahl529_01
'
end_select
end
'
REM UNTERMENÜS SCHLIESSEN RÜCKKEHR AUF FORM 000
'
Menueschliessen:
For i% = Bildhoehe TO 0 Step -2
height  Form_Nr%,i%
next i%
hide    Form_Nr%
command_target_is 000
caption  000,FORM_TEXT000$
Gosub RAHMENAUFFORM03
Gosub RAHMENAUFFORM01
return
'
REM RAHMEN SCHWARZ AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM01:
2D_target_is 000
2d_pen_color 0,0,0
' *** LINIEN OBEN
2d_line 0,0,screen_x- 9,0
2d_line 3,3,screen_x-12,3
REM LINIEN LINKS
2d_line 0,0,0,screen_y-99
2d_line 3,3,3,screen_y-102
REM LINIEN RECHTS
2d_line screen_x- 9,0,screen_x- 9,screen_y- 99
2d_line screen_x-12,3,screen_x-12,screen_y-102
REM LINIEN UNTEN
2d_line 0,screen_y- 99,screen_x- 9,screen_y- 99
2d_line 3,screen_y-102,screen_x-12,screen_y-102
2d_pen_color 0,0,0
return
'
REM RAHMEN ROT AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM02:
2D_target_is 00000
2d_pen_color 255,0,0
REM LINIEN OBEN
2d_line 1,1,screen_x-10,1
2d_line 2,2,screen_x-11,2
REM LINIEN LINKS
2d_line 1,1,1,screen_y-100
2d_line 2,2,2,screen_y-101
REM LINIEN RECHTS
2d_line screen_x-10,1,screen_x-10,screen_y-100
2d_line screen_x-11,2,screen_x-11,screen_y-101
REM LINIEN UNTEN
2d_line 1,screen_y-100,screen_x-10,screen_y-100
2d_line 2,screen_y-101,screen_x-11,screen_y-101
2d_pen_color 0,0,0
return
'
REM RAHMEN GRÜN AUF ALLEN FORMEN ZEICHNEN
RAHMENAUFFORM03:
2D_target_is 00000
2d_pen_color 0,255,0
REM LINIEN OBEN
2d_line 1,1,screen_x-10,1
2d_line 2,2,screen_x-11,2
REM LINIEN LINKS
2d_line 1,1,1,screen_y-100
2d_line 2,2,2,screen_y-101
REM LINIEN RECHTS
2d_line screen_x-10,1,screen_x-10,screen_y-100
2d_line screen_x-11,2,screen_x-11,screen_y-101
REM LINIEN UNTEN
2d_line 1,screen_y-100,screen_x-10,screen_y-100
2d_line 2,screen_y-101,screen_x-11,screen_y-101
2d_pen_color 0,0,0
return
'
'
REM SCHRIFTART "Courier" GRÖSSE 09 Normal
Schriftart09N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Normal
Schriftart10N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Normal
Schriftart11N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Normal
Schriftart12N:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold_off      SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 09 Fett
Schriftart09F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Fett
Schriftart10F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Fett
Schriftart11F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Fett
Schriftart12F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 15 Fett
Schriftart15F:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,15
font_bold          SCHRIFTART
font_underline_off SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 09 Fett Unterstrichen
Schriftart09FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,09
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 10 Fett Unterstrichen
Schriftart10FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,10
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 11 Fett Unterstrichen
Schriftart11FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,11
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 12 Fett  Unterstrichen
Schriftart12FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,12
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
REM SCHRIFTART "Courier" GRÖSSE 15 Fett  Unterstrichen
Schriftart15FU:
font_name          SCHRIFTART,"Courier"
font_size          SCHRIFTART,15
font_bold          SCHRIFTART
font_underline    SCHRIFTART
font_strike_off    SCHRIFTART
font_italic_off    SCHRIFTART
return
'
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptySam 15 Jan 2011 - 15:00

Hallo, Severin,

Ja, jetzt sieht es gut aus ! Ich habe Dir alle unnötigen END Anweisungen mit ": ' *** klaus unnötig, wird nie erreicht" markiert - Du kannst sie einfach zur Klarheit weglassen bis aus eins, das ich besonders markiert habe, denn dort sollte eine Fehlermeldung stehen.

Was Deine Ansicht von des Funktion des Menus anbetrifft, hast Du zwar Recht, aber es ist eine etwas restriktive Darstellung. Ein Klick auf eine Menu-Zeile ist ein möglicher Event unter vielen, in Panoramic. Auf genau gleicher Ebene finden sich dir Klicks auf andere Objekte, zum Beispiel Dein Zuruek-Button, aber genauer gesagt alle events dir mit ON_xxx angemeldet werden: ON_CLICK, ON_CHANGE, ON_KEY_DOWN, ON_KEY_UP, ON_CLOSE, ON_TIMER et ON_ERROR im augenblicklichen Stand von Panoramic. Alle diese Events könnent desaktiviert werden durch das ensprechende OFF_xxx-Kommando. Panoramic "sammelt" diese Events in einer Warteschlange un ruft die entsprechenden Subroutines auf, bekommt das Return vom User um den Event zu quittieren usw. Allerdings können manche Events eine schon gestartete Parnoramic-Eventroutine unterbrechen und auf eine andere umschalten, und genau das istr der Grund, warum man so strikt nach Regel vorgehen muss.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptySam 15 Jan 2011 - 17:04

Hallo Klaus,
jetzt brauche ich einige Zeit um das alles in mein Programm einzuarbeiten. Mein Urlaub ist zu Ende.
Als nächsten Schritt brauche ich 2 Button zu Auswah:
1. für zurück
2.1 für drucken auf bestimmten Formen / 2.2 für speichern auf bestimmten Formen
Die ersten Versuche mit deiner DLL drucken sind recht gut gelaufen. Muß natürlich, da ich viel unterwegs bin, verschiedene Drucker berücksichtigen.
Eine Frage noch, paßt sich der Bildschirm an deine Auflösung an ? Meine 1680X1050
Hast du eine DLL die alle DLL beinhaltet ?
Ich habe früher in GW-Basic programmiert. Bin dann wegen Win auf Excel umgestiegen. Jetzt habe ich Panoramic gefunden und bin begeistert von dem
recht "einfachen affraid " programmieren. Ich hoffe das Jack weiter macht. Mein Programm will ich beruflich einsetzen.
Bis demnächst
Severin
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptyDim 16 Jan 2011 - 11:22

Hallo Severin,

Meine KGF.dll enthält alle kleinen DLL's bis auf IsRunning.dll und SetWindowButtons.dll, die aber auch leict darin integriert werden könnten. Insbesondere Print.dll ist in KGF.dll enthalten.

Auf meiner Webseite, Rubrik Externals, dritte ligne, findest Du WinTExtPrint - ein stand-alone Programm zum formattierten Ausdruck von Text, beliebig gemischt mit Bildern, PDF-Seiten usw. Vollständige Dokumentation ist beigefügt, einschliesslich Anwendungsbeispiel.

Mein Bildschirm ist 1280x800 - kein Problem mit Deinem Programm.

Alle meine Programme, DLL's und Hilfsprogramme sind Freeware in Quell- on Binärformat, also kein Problem für berufliche Nutzung. Sollte eventuell Dir Panoramic oder meine eigenen bescheidenen Werke Dir Nutzn bringen, kann ich Dir nur nahelegen, an eine kleine Spende für Jack zu denken- er entwickelt Panoramic ganz allein, in seiner Freizeit, und kassiert keinerlei Lizenzgebühren, weder für die Entwicklungsseite, noch für die Enduserseite, da alle Programme als *.exe frei generiert und verteilt werden können, und soetwas ist eigentlich recht selten. Ein Link zur Spende ist auf der französischen Webseite unten: http://www.panoramic-language.com/

Viel Erfolg mit Deinem Programm !
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Severin




Nombre de messages : 547
Localisation : Braunschweig / Germany
Date d'inscription : 13/12/2010

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptyDim 16 Jan 2011 - 20:42

Hallo Klaus,
danke für deine Antwort. Ich werde deine KGF.dll benutzen. Ich hatte schon darum gebeten das Jack mir seine Kontonummer mitteilt. Die Spenden für Dezember und Januar stehen bereit und können dann sofort überwiesen werden. Wenn du noch die beiden fehlenden dll in KGF integrieren könntest, bekommst du auch eine Spende.
Ich möchte mir kein Paypal Konto zulegen. Jach hat ja meine E-Mail. Dir werde ich die E-Mail auf deiner Home-Page mitteilen.
Severin
Revenir en haut Aller en bas
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur EmptyDim 16 Jan 2011 - 22:44

Ich danke Dir für Dein freundliches Angebot, lehne es aber ab und hoffe, dass Du es rech verstehst. Was mich persönlich anbetrifft, als "Lehrer" und Informatiker im Ruhestand, ist meine einzie Motivation, mich geistig int "informatisch" fit zu halten und womöglich Spass daran zu haben. Wenn es dabei anderen zu Gute kommt, ist das für mich längst Belohnung genug.

Ich integriere die beiden kleinen DLL's in KGF.dll und gebe darüber Nachricht in der ensprechenden Rubrik von https://panoramic.1fr1.net/f11-le-site-de-klaus.
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
Contenu sponsorisé





Programm Struktur Empty
MessageSujet: Re: Programm Struktur   Programm Struktur Empty

Revenir en haut Aller en bas
 
Programm Struktur
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Programm Severin

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Présentation et bavardage-
Sauter vers: