Español
Foro

Processe con Settext/Gettext$ ...se ejecuta wunderbar.

 

funkheld
¡Hola, con el Processen se ejecuta lo ahora wunderbar.
Yo habe hier una Ejemplo con Datos Process encima Settext/Gettext$, also sin Filmap usw.

Ein Ventana principal para el Roboter, wo el Entfernungen el él encima WLan schickt de XProfan dargestellt voluntad. El WLan-Daten voluntad encima 1 Process empfangen y gesendet. 1 Process Yo una serielle Datenübertragung y 1 Process voluntad Pixel ausgegeben.

Also una tolle Sache con el Processen, wunderbar.
Yo quería veces el Comportamiento prüfen.

Wann se el Hauptprogramm veces en el holpern kommen con el vielen Processen?

Gruss
 {$cle}
 {$PUSHKEYWORD pExec}
declarar b_vor&,b_zur&,zielfenster&
declarar b_links&,b_hlinks&,b_mitte&,b_hrechts&,b_rechts&
declarar b_v0&,b_v1&,b_v2&
declarar b_ser0&,b_ser1&,b_sharp&,b_ton&,b_cls&
declarar ende&,texto$,bpic&,bpich&,wert&,hw&,ht&,hx&,hy&,p&,p1&,p2&,htext&,hd1&
declarar x!,y!,wtest&,color&
windowtitle "send"
Ventana 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& = Crear("Button",%HWnd,"vor", 10, 20, 80, 24)
b_zur& = Crear("Button",%HWnd,"zurück", 10, 45, 80, 24)
b_links& = Crear("Button",%HWnd,"links", 10, 70, 80, 24)
b_hlinks& = Crear("Button",%HWnd,"hlinks", 10, 95, 80, 24)
b_mitte& = Crear("Button",%HWnd,"mitte", 10, 120, 80, 24)
b_hrechts& = Crear("Button",%HWnd,"hrechts", 10, 145, 80, 24)
b_rechts& = Crear("Button",%HWnd,"rechts", 10, 170, 80, 24)
b_v0& = Crear("Button",%HWnd,"v0", 10, 195, 80, 24)
b_v1& = Crear("Button",%HWnd,"v1", 10, 220, 80, 24)
b_v2& = Crear("Button",%HWnd,"v2", 10, 245, 80, 24)
b_ser0& = Crear("Button",%HWnd,"ser0", 10, 270, 80, 24)
b_ser1& = Crear("Button",%HWnd,"ser1", 10, 295, 80, 24)
b_sharp& = Crear("Button",%HWnd,"sharp", 10, 320, 80, 24)
b_ton& = Crear("Button",%HWnd,"ton", 10, 345, 80, 24)
b_cls& = Crear("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

Mientras que ende&

    WaitInput

    If Clicked(b_vor&)

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

    elseIf Clicked(b_zur&)

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

    elseIf Clicked(b_links&)

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

    elseIf Clicked(b_hlinks&)

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

    elseIf Clicked(b_mitte&)

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

    elseIf Clicked(b_hrechts&)

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

    elseIf Clicked(b_rechts&)

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

    elseIf Clicked(b_v0&)

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

    elseIf Clicked(b_v1&)

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

    elseIf Clicked(b_v2&)

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

    elseIf Clicked(b_ser0&)

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

    elseIf Clicked(b_ser1&)

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

    elseIf Clicked(b_sharp&)

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

    elseIf Clicked(b_ton&)

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

    EndIf

    If 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&))

    if 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

    if 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

    Parámetros Texto$
    settext htext&,texto$
    PostMessage(ZielFenster&, $1000, 0, 0)

ENDPROC

Proc Prozess

    Parámetros hw&,ht&,hx&,hy&,htext&
    Declarar ende&,texto$,test&,test1&,wtest&,wert&,x!,y!,winkel!,urlpart$
    Declarar HandleMap&, ViewPointer&, Buffer#
    windowtitle "roboter"
    window 720,20 - 200, 200
    Ende& = 0
    Mensajes del usuario $1000

    Sinestar encargado ende&

        waitinput 100

        If %UMessage = $1000

            texto$ = gettext$(htext&)
            test1&=val(substr$(texto$,1,","))

            if test1& > 0

                test&=1
                wtest&=val(substr$(texto$,2,","))
                urlpart$=substr$(texto$,3,",")
                imprimir texto$
                texto$=""

            endif

        endif

        if test&=1

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

        más

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

        endif

        mientras que %Loading

            sleep 10

        endwhile

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

        if wtest&=1

            winkel!=winkel!+1.6

            if winkel! > 180.0

                wtest&=0
                winkel!=0

            endif

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

        endif

        if wtest&=2

            winkel!=winkel!+1.6

            if 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

    parámetros win&,hd1&
    declarar ende&,f&,wert&
    declarar texto$
    f& = OpenCom("COM1",1024,1024)
    SetCom("COM1:19200,N,8,1")
    windowtitle "seriell"
    window 920,20 - 200,200
    imprimir "Process Seriell"
    ende& = 0

    whilenot ende&

        Case GetText $(win&) = "" : ende& = 1
        GetComInput f&

    endwhile

    Proc GetComInput

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

        if wert& > 0

            setText hd1&, str$(wert&)

        endif

    ENDPROC

ENDPROC

Proc Prozess2

    declarar ende&,bild&
    windowtitle "pixel"
    Ventana 1120,20-200,200
    erzeugebild()
    ende&=1

    WHILE ende&

        waitkey

    ENDWHILE

    proc erzeugebild()

        Declarar x&,y&

        whileloop 1,199

            y&=&bucle

            WhileLoop 1,199

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

            EndWhile

        EndWhile

    ENDPROC

ENDPROC


96 kB
Hochgeladen:17.04.2016
Ladeanzahl155
Descargar
96 kB
Hochgeladen:17.04.2016
Ladeanzahl130
Descargar
 
17.04.2016  
 



funkheld (17.04.2016)
Wann se el Hauptprogramm veces en el holpern kommen con el vielen Processen?


El Abarbeitung:
If %UMessage = $1000

    texto$ = gettext$(htext&)
    test1&=val(substr$(texto$,1,","))
scheint No konsistent como el Mensajes del usuario asynchron einflattern y dieser Tiempo htext& "längst" neu beschrieben voluntad podría. Der jeweils otro Prozess debería aktiv en una Gegenzeichen warten.
 
17.04.2016  
 




H.Brill
El otro Parámetro wparam y lparam
en SendMessage / Postmessage kannst du sí
auch todavía nutzen. Damit kannst du z.B. signalisieren,
si en el Hauptprogramm algo geändert ha.

Der Prozess, el el Message gilt, kann entonces
encima &uwParam oder &ulParam el erkennen
y entsprechend reagieren.
 
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
Gracias para el Respuesta.

¿Cómo se puede uno esta Aussage entonces Por favor, umsetzen en un Process:
......Der jeweils otro Prozess debería aktiv en una Gegenzeichen warten....

Gruss
 
17.04.2016  
 




H.Brill
Was macht porque dein Programa genau ?

Como Yo el sehe, empfängt Prozess el
WLAN-Daten, Prozess1 empfängt qué encima
el serielle Schnittstelle y Prozess2 malt
con SetPixel qué aufs Ventana.

Was IF wahrscheinlich meint, es, daß el
Prozesse Messages enviar, si qué
bereit/fertig es.

Also, si el Datenpaket encima WLAN gesendet
y el Daten berechnet fueron, informiert Prozess
el Prozess2, daß él malen kann. Dafür puede ser
wunderbar el Parámetro wParam y lParam de
SendMessage benutzen, hacer frente a 0 oder 1 anzuzeigen,
daß Prozess fertig es y Prozess2 beginnen kann.

Was el serielle Schnittstelle ahora macht, Yo
todavía no rausbekommen.

Was me todavía auffiel :
Yo sería el Procs no necesariamente ineinander
verschachteln, also una Proc en uno otro Proc.

Das mag tal vez siempre gutgehen, aber verlassen
sería Yo mich como no.
 
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
Sí danke para el Info.

El RS232 es sólo sólo para Test en Betrieb y es entonces para Daten zuständig el parallel empfangen voluntad para el Hauptprogramm de una Steuerplatine (Arduino). Zum Hauptprogramm debería todos DatenFäden laufen y luego kommt una Aktion darauf.

Also :
- Process-WLan para Hauptprogramm
- Process-serielle Datos Hauptprogramm
- zuständige Datos Process Grafikfenster

así lugar Yo el antes.

Gracias.
Gruss
 
18.04.2016  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

5.202 Views

Untitledvor 0 min.
RudiB.08.01.2022
iF31.10.2020
Wilfried12.06.2016
Torsten Rümker10.05.2016
Más...

Themeninformationen

Dieses Thema ha 3 subscriber:

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


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie