Français
Forum

Processe avec Settext/Gettext$ ...fonctionne wunderbar.

 

funkheld
allô, avec den Processen fonctionne es maintenant wunderbar.
j'ai ici un Beispiel avec données zum Process sur Settext/Gettext$, alors sans Filmap usw.

un Hauptfenster pour den Roboter, wohin qui Entfernungen qui il sur WLan envoyez de XProfan dargestellt volonté. qui WLan-données volonté sur 1 Process empfangen et gesendet. 1 Process habe je une serielle Datenübertragung et 1 Process volonté Pixel ausgegeben.

alors un tolle l'affaire avec den Processen, wunderbar.
je voulais la fois cela Verhalten vérifier.

quand wird cela Hauptprogramm la fois ins holpern venons avec den vielen Processen?

Gruss
 {$cle}
 {$PUSHKEYWORD pExec}
declare b_vor&,b_zur&,zielfenster&
declare b_links&,b_hlinks&,b_mitte&,b_hrechts&,b_rechts&
declare b_v0&,b_v1&,b_v2&
declare b_ser0&,b_ser1&,b_sharp&,b_ton&,b_cls&
declare ende&,text$,bpic&,bpich&,wert&,hw&,ht&,hx&,hy&,p&,p1&,p2&,htext&,hd1&
declare x!,y!,wtest&,color&
windowtitle "send"
Fenêtre 20,20-700,650
color&=rgb(160,160,160)
cls color&
bpic& = create("hNewPic", 400,400,rgb(255,255,255))
bpich& = create("hNewPic", 400,400,rgb(255,255,255))
b_vor& = Créer("Button",%HWnd,"vor", 10, 20, 80, 24)
b_zur& = Créer("Button",%HWnd,"zurück", 10, 45, 80, 24)
b_links& = Créer("Button",%HWnd,"links", 10, 70, 80, 24)
b_hlinks& = Créer("Button",%HWnd,"hlinks", 10, 95, 80, 24)
b_mitte& = Créer("Button",%HWnd,"mitte", 10, 120, 80, 24)
b_hrechts& = Créer("Button",%HWnd,"hrechts", 10, 145, 80, 24)
b_rechts& = Créer("Button",%HWnd,"rechts", 10, 170, 80, 24)
b_v0& = Créer("Button",%HWnd,"v0", 10, 195, 80, 24)
b_v1& = Créer("Button",%HWnd,"v1", 10, 220, 80, 24)
b_v2& = Créer("Button",%HWnd,"v2", 10, 245, 80, 24)
b_ser0& = Créer("Button",%HWnd,"ser0", 10, 270, 80, 24)
b_ser1& = Créer("Button",%HWnd,"ser1", 10, 295, 80, 24)
b_sharp& = Créer("Button",%HWnd,"sharp", 10, 320, 80, 24)
b_ton& = Créer("Button",%HWnd,"ton", 10, 345, 80, 24)
b_cls& = Créer("Button",%HWnd,"cls", 120, 20, 40, 24)
hw& = create("Edit", %HWnd, », 100,500,60,20)
ht& = create("Edit", %HWnd, », 100,525,60,20)
hx& = create("Edit", %HWnd, », 100,550,90,20)
hy& = create("Edit", %HWnd, »,100,575,90,20)
htext& = create("Edit", %HWnd, »,0,0,0,0)
hd1& = create("Edit", %HWnd, »,300,500,90,20)
startpaint bpic&
USEP 0,1,$ff0000
EndPaint
startpaint %HWnd
drawpic bpic&,200,20;0
DrawText 20, 500, "Entfernung"
DrawText 20, 525, "Status"
DrawText 20, 550, "XPosition"
DrawText 20, 575, "YPosition"
DrawText 245, 500, "seriell"
EndPaint
p& = pExec("|Prozess",hw&,ht&,hx&,hy&,htext&)
sleep 200
p1&=pExec("|Prozess1",%HWnd, hd1&)
sleep 200
p2&=pExec("|Prozess2")
sleep 200
ZielFenster& = FindWindow("roboter")
ende&=1

Tandis que ende&

    WaitInput

    Si Clicked(b_vor&)

        text$="1,0,vor"
        WriteStr(text$)

    elseIf Clicked(b_zur&)

        text$="1,0,zur"
        WriteStr(text$)

    elseIf Clicked(b_links&)

        text$="1,0,links"
        WriteStr(text$)

    elseIf Clicked(b_hlinks&)

        text$="1,0,hlinks"
        WriteStr(text$)

    elseIf Clicked(b_mitte&)

        text$="1,0,mitte"
        WriteStr(text$)

    elseIf Clicked(b_hrechts&)

        text$="1,0,hrechts"
        WriteStr(text$)

    elseIf Clicked(b_rechts&)

        text$="1,0,rechts"
        WriteStr(text$)

    elseIf Clicked(b_v0&)

        text$="1,0,v0"
        WriteStr(text$)

    elseIf Clicked(b_v1&)

        text$="1,0,v1"
        WriteStr(text$)

    elseIf Clicked(b_v2&)

        text$="1,0,v2"
        WriteStr(text$)

    elseIf Clicked(b_ser0&)

        text$="1,0,ser0"
        WriteStr(text$)

    elseIf Clicked(b_ser1&)

        text$="1,1,ser1"
        WriteStr(text$)

    elseIf Clicked(b_sharp&)

        text$="1,2,sharp"
        WriteStr(text$)

    elseIf Clicked(b_ton&)

        text$="1,0,ton"
        WriteStr(text$)

    EndIf

    Si Clicked(b_cls&)

        startpaint bpic&
        drawpic bpich&,0,0;0
        EndPaint
        startpaint %HWnd
        drawpic bpic&,200,20;0
        EndPaint

    EndIf

    wtest&=val(gettext$(ht&))
    x!=val(gettext$(hx&))
    y!=val(gettext$(hy&))

    si wtest& = 1

        startpaint bpic&
        USEP 0,1,$0000ff
        Line 200,200-200+x!,200+y!
        EndPaint
        startpaint %HWnd
        drawpic bpic&,200,20;0
        EndPaint

    endif

    si wtest& = 2

        startpaint bpic&
        USEP 0,1,$ff00
        Line 200,200-200+x!,200+y!
        EndPaint
        startpaint %HWnd
        drawpic bpic&,200,20;0
        EndPaint

    endif

endwhile

end

Proc WriteStr

    Paramètres Text$
    settext htext&,text$
    Poster un message(ZielFenster&, $1000, 0, 0)

ENDPROC

Proc Prozess

    Paramètres hw&,ht&,hx&,hy&,htext&
    Déclarer ende&,text$,test&,test1&,wtest&,wert&,x!,y!,winkel!,urlpart$
    Déclarer HandleMap&, ViewPointer&, Buffer#
    windowtitle "roboter"
    window 720,20 - 200, 200
    Ende& = 0
    Utilisateur Messages $1000

    WhileNot ende&

        waitinput 100

        Si %UMessage = $1000

            text$ = gettext$(htext&)
            test1&=val(substr$(text$,1,»))

            si test1& > 0

                test&=1
                wtest&=val(substr$(text$,2,»))
                urlpart$=substr$(text$,3,»)
                imprimer text$
                text$=»

            endif

        endif

        si test&=1

            downloadfile("https://192.168.2.101/?pin="+urlpart$)
            test&=0

        d'autre

            downloadfile("https://192.168.2.101/?pin=leer")

        endif

        tandis que %Loading

            sleep 10

        endwhile

        wert&=str$(ord($download))

        si wtest&=1

            winkel!=winkel!+1.6

            si winkel! > 180.0

                wtest&=0
                winkel!=0

            endif

            x!=Sin(winkel!*0.0174532925199433)*wert&
            y!=Cos(winkel!*0.0174532925199433)*wert&

        endif

        si wtest&=2

            winkel!=winkel!+1.6

            si winkel! > 180.0

                wtest&=0
                winkel!=0

            endif

            x!=Sin((winkel!+180)*0.0174532925199433)*wert&
            y!=Cos((winkel!+180)*0.0174532925199433)*wert&

        endif

        setText hw&,str$(wert&)
        setText ht&,str$(wtest&)
        setText hx&,str$(x!)
        setText hy&,str$(y!)

    Endwhile

endProc

Proc Prozess1

    parameters win&,hd1&
    declare ende&,f&,wert&
    declare text$
    f& = OpenCom("COM1",1024,1024)
    SetCom("COM1:19200,N,8,1")
    windowtitle "seriell"
    window 920,20 - 200,200
    imprimer "Process Seriell"
    ende& = 0

    whilenot ende&

        Cas GetText $(win&) = » : ende& = 1
        GetComInput f&

    endwhile

    Proc GetComInput

        text$ = ReadCom$(f&,128,128)
        wert&=Ord(text$)

        si wert& > 0

            setText hd1&, str$(wert&)

        endif

    ENDPROC

endproc

Proc Prozess2

    declare ende&,bild&
    windowtitle "pixel"
    Fenêtre 1120,20-200,200
    erzeugebild()
    ende&=1

    WHILE ende&

        waitkey

    ENDWHILE

    proc erzeugebild()

        Déclarer x&,y&

        whileloop 1,199

            y&=&loop

            WhileLoop 1,199

                startpaint %HWnd
                x&=&loop
                sleep 1
                SetPixel x&,y&,rgb(255,0,0)

            Endwhile

        Endwhile

    endproc

endproc


96 kB
Hochgeladen:17.04.2016
Downloadcounter148
Download
96 kB
Hochgeladen:17.04.2016
Downloadcounter123
Download
 
17.04.2016  
 



funkheld (17.04.2016)
quand wird cela Hauptprogramm la fois ins holpern venons avec den vielen Processen?


qui Abarbeitung:
Si %UMessage = $1000

    text$ = gettext$(htext&)
    test1&=val(substr$(text$,1,»))
scheint Je ne konsistent là qui Utilisateur Messages asynchron einflattern et dans cette Zeit htext& "längst" récente beschrieben volonté pourrait. qui jeweils autre Prozess sollte aktiv sur un Gegenzeichen attendre.
 
17.04.2016  
 




H.Brill
qui anderen paramètre wparam et lparam
chez SendMessage / Postmessage peux du oui
aussi encore nutzen. avec cela peux du z.B. signalisieren,
si sich im Hauptprogramm quelque chose geändert hat.

qui Prozess, dem qui Message gilt, peux ensuite
sur &uwParam ou bien &ulParam cela erkennen
et entsprechend réagir.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
17.04.2016  
 




funkheld
merci pour qui répondre.

comment peux on cet Aussage ensuite s'il te plaît umsetzen dans einem Process:
......qui jeweils autre Prozess sollte aktiv sur un Gegenzeichen attendre....

Gruss
 
17.04.2016  
 




H.Brill
quoi pouvoir car dein Programme oui c'est ca ?

comment je cela vois, empfängt Prozess qui
WLAN-données, Prozess1 empfängt quoi sur
qui serielle Schnittstelle et Prozess2 malt
avec SetPixel quoi aufs la fenêtre.

quoi IF wahrscheinlich meint, ist, qui qui
Prozesse Messages envoyons, si quoi
bereit/fertig ist.

alors, si cela Datenpaket sur WLAN gesendet
et qui données berechnet wurden, informiert Prozess
den Prozess2, qui il malen peux. Pour cette peux on
wunderbar qui paramètre wParam et lParam de
SendMessage benutzen, um avec 0 ou bien 1 anzuzeigen,
qui Prozess fertig ist et Prozess2 commencer peux.

quoi qui serielle Schnittstelle maintenant pouvoir, habe je
encore pas rausbekommen.

quoi mir encore auffiel :
je serait qui Procs pas absolument ineinander
verschachteln, alors une Proc dans einer anderen Proc.

cela mag peut-être toujours gutgehen, mais sortir de
serait je mich là pas.
 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
18.04.2016  
 




funkheld
oui merci pour qui Info.

qui RS232 ist seulement seulement zum Test dans Betrieb et ist ensuite pour données zuständig qui parallèle empfangen volonté pour cela Hauptprogramm de une Steuerplatine (Arduino). Zum Hauptprogramm devoir alle DatenFäden courir et ensuite venez une Aktion puis.

alors :
- Process-WLan zum Hauptprogramm
- Process-serielle données zum Hauptprogramm
- zuständige données zum Process Grafikfenster

so lieu je mir cela avant.

merci.
Gruss
 
18.04.2016  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

5.005 Views

Untitledvor 0 min.
RudiB.08.01.2022
iF31.10.2020
Wilfried12.06.2016
Torsten Rümker10.05.2016
plus...

Themeninformationen

cet Thema hat 3 participant:

funkheld (3x)
H.Brill (2x)
iF (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie