Deutsch
Forum

mcopybmp und mloadbmp

 
Hallo,

Ich bin z.Zt. in der Umschulung zum Fachinformatiker Anwendungsentwicklung und komme mit einem bestimmten bereich in XProfan nicht klar, z.Zt. raubt mir das den letzten Nerv. Wir sollen eine Steuerung für eine WR64 oder auch ne Logo für ein Rolltor basteln mit tastern etc. damit komme ich soweit klar, aber wenn ich versuche das Rolltor per mcopybmp teilweise reinzukopieren so als würde das Tor runter oder hochfahren macht er das nicht, er erkennt die beiden variablen y1% und x2% einfach nicht an, diese kann ich beliebig ändern. Für mich ist es z.Zt. echt schwer hinterher zu kommen da ich Vater einer kleinen Tochter bin und im Moment einfach nicht die Zeit habe das zu hause nachzuarbeiten. Ich hoffe ihr könnt mir einen kleinen Denkanstoss geben, mein Kollege ist damit schon fertig, leider

und zwar habe ich folgendes Problem:

sobald ich versuche das Bild zu kopieren ob ganz oder teilweise zeigt er es nicht an, ich habe wirklich etliche Kombinationen und Befehle versucht aber das will er irgendwie nicht oder ich kapier das einfach nicht. Dazu kommt noch das er die Variablen y1% und x2% einfach nicht erkennt, es kümmert xprofan nicht ob ich da was verändere die Größe bleibt immer gleich, und es soll sich mit y1% +1 jedes mal in der Whileschleife öffnen, also immer ein pixel höher gehen.

Mein Programm (nur das Testprogramm fürs Rolltor) und die Bitmap füge ich bei.

das Ganze soll einfach von oben nach unten fahren und wieder zurück also entweder per mousekey oder waitinput danach kann ich meine Taster einfügen, sieht alles z.Zt. etwas willkürlich aus da ich viel herum experimentiert habe.

Gruß aus Wilhelmshaven



Herunterladen

A.Reintgen

69 kB
Kurzbeschreibung: rtor
Hochgeladen:30.05.2011
Ladeanzahl89
Herunterladen
1 kB
Kurzbeschreibung: Testprogramm rolltor
Hochgeladen:30.05.2011
Ladeanzahl121
Herunterladen
 
30.05.2011  
 



Ich glaube das eine meiner wertevergaben einfach nicht stimmt, denn wenn ich das z.B. so zum hochzählen teste bleibt das dennoch gleich
KompilierenMarkierenSeparieren
locate 20,20
print y1%+10

er gibt dennoch die festgelegten 200 wieder
 
30.05.2011  
 



Hi!

Leider hast Du keine XProfan-Version angegeben.

Du schreibst:
KompilierenMarkierenSeparieren
mloadbmp ("C:\\Bmp\\Objekte\\rolltor.BMP")
- es sollte aber:
KompilierenMarkierenSeparieren
mloadbmp "C:\\Bmp\\Objekte\\rolltor.BMP"
heißen da mloadbmp eine Prozedur statt Funktion ist.

Prozedur:
KompilierenMarkierenSeparieren
AddString "Hallo Welt"

Funktion:
KompilierenMarkierenSeparieren
AddString("Hallo Welt")

Bei solchen Befehlen die als Parametertrennzeichen ein Minus statt ein Komma benötigen wie z.B. aus Deinem Code:
KompilierenMarkierenSeparieren
rectangle 269,352-431;110
immer besser Freizeichen vor und nach dem Minus setzen oder xpse (  [...]  ) einsetzen (benötigt XProfan-Vollversion) und einheitlich das Komma verwenden (  [...]  ).


reinzukopieren so als würde das Tor runter oder hochfahren macht er das nich


Ich kann in dem Code nichts erkennen was dazu führen soll dass das Tor hoch oder herunter fährt - Variablenwerte werden zwar gesetzt aber nirgends hoch- oder herunter gezählt.

So fährts:
KompilierenMarkierenSeparieren
cls
mLoadBmp "rolltor.BMP"
startPaint -1
usepen 0,0,$FFFFFF
line 0,181 - 127,181
endPaint

whileLoop 182,0,-1

    mCopyBmp 0,&loop - 127,182 > 100,100 ; 0
    sleep 30

wend

waitInput

whileLoop 182

    mCopyBmp 0,&loop - 127,182 > 100,100 ; 0
    sleep 30

wend

end

Herunterladen

33 kB
Hochgeladen:30.05.2011
Ladeanzahl62
Herunterladen
 
30.05.2011  
 



Hi und danke für deine Hilfe Also benutze Xprofan 11 Vollversion Editor 11.2. Und ja da war bislang der Haken mit dem hochfahren da er die Variablen nicht wirklich hochrechnen wollte hatte dies halt einfach immer mit z.B.

x1% +10

versucht.

Ich werde mir dein Beispiel mal inhalieren und studieren, denn wir haben leider in einer Woche 4 unterschiedliche Programme verwendet was mich doch ziemlich verunsichert hat.

Zuerst Blitzbasic-Variationen,Smallbasic und jetzt Xprofran vorerst Shareware jetzt die Vollversion, da wir uns das alle selbst erarbeiten müssen kommt man da recht schnell durcheinander.
 
30.05.2011  
 



Gern geschehen.

Nochwas:
KompilierenMarkierenSeparieren
x1%+10
wird so nicht funktionieren, eher:
KompilierenMarkierenSeparieren
x1%=x1%+10
oder
KompilierenMarkierenSeparieren
add x1%,10
bzw.
KompilierenMarkierenSeparieren
inc x1%,10

PS: Registriere Dich doch, XProfan.Com ist werbefrei und kostenlos.
 
30.05.2011  
 



Also hier die komplette Tafel der Steuerung mal kurz:
KompilierenMarkierenSeparieren
Window 1,1 - 640,480
cls
declare hBild1&,hBild2&,hBild3&,hBild4&,hBild5&,hBild6&,hBild7&,hBild8&\
,hBild9&,hBild10&,hBild11&,hBild12&,hBild13&,hBild14&,hBild15&,hBild16&

Proc BMP

    hBild1&  = @create ("HPic",-1,"C:\\Bmp\\Schalter\\tagn0.BMP")
    hBild2&  = @create ("HPic",-1,"C:\\Bmp\\Schalter\\tagn1.BMP")
    hBild3&  = @create ("HPic",-1,"C:\\Bmp\\Schalter\\tart0.BMP")
    hBild4&  = @create ("HPic",-1,"C:\\Bmp\\Schalter\\tart1.BMP")
    hBild5&  = @create ("HPic",-1,"C:\\Bmp\\Schalter\\nota1.BMP")
    hBild6&  = @create ("HPic",-1,"C:\\Bmp\\Schalter\\trt1.BMP")
    hBild7&  = @create ("HPic",-1,"C:\\Bmp\\Schalter\\trt0.BMP") ;Störungsleuchte ein
    hBild8&  = @create ("HPic",-1,"C:\\Bmp\\Schalter\\tabl0.BMP")
    hBild9&  = @create ("HPic",-1,"C:\\Bmp\\Schalter\\tge0.BMP")
    hBild10& = @create ("HPic",-1,"C:\\Bmp\\Schalter\\tgn1.BMP")
    hBild11& = @create ("HPic",-1,"C:\\Bmp\\Schalter\\sertar1.BMP")
    hBild12& = @create ("HPic",-1,"C:\\Bmp\\Schalter\\sertar0.BMP")
    hBild13& = @create ("HPic",-1,"C:\\Bmp\\Objekte\\druckzr.BMP")
    hBild14& = @create ("HPic",-1,"C:\\Bmp\\Objekte\\emotl1.BMP")
    hBild15& = @create ("HPic",-1,"C:\\Bmp\\Schalter\\lichtschr.BMP")
    hBild16& = @create ("HPic",-1,"C:\\Bmp\\Objekte\\rolltor.BMP")

Endproc

Proc BMP1

    roundrect 600,130 - 500,300;30,30
    rectangle 1,290 - 200;0
    DrawSizedPic hBild1&,40,50 - 30,30;0
    DrawSizedPic hBild1&,40,210 - 30,30;0
    DrawSizedPic hBild1&,40,170 - 30,30;0
    DrawSizedPic hBild1&,40,250 - 30,30;0
    DrawSizedPic hBild3&,40,130 - 30,30;0
    DrawSizedPic hBild3&,40,10 - 30,30;0
    DrawSizedPic hBild5&,120,10 - 30,30;0
    DrawSizedPic hBild8&,120,50 - 30,30;0
    DrawSizedPic hBild6&,120,130 - 30,30;0
    DrawSizedPic hBild9&,120,170 - 30,30;0
    DrawSizedPic hBild10&,120,210 - 30,30;0
    DrawSizedPic hBild10&,210,135 - 30,30;0
    DrawSizedPic hBild10&,210,230 - 30,30;0
    DrawSizedPic hBild6&,210,320 - 30,30;0
    DrawSizedPic hBild12&,240,320 - 30,30;0
    DrawSizedPic hBild11&,240,230 - 30,30;0
    DrawSizedPic hBild12&,240,135 - 30,30;0
    DrawSizedPic hBild13&,430,320 - 30,30;0
    DrawSizedPic hBild14&,430,120 - 40,40;0
    DrawSizedPic hBild15&,420,370 - 30,30;0
    DrawSizedPic hBild16&,270,130 - 160,220;0
    DrawSizedPic hBild3&,510,140 - 30,30;0
    DrawSizedPic hBild1&,510,180 - 30,30;0
    DrawSizedPic hBild1&,510,220 - 30,30;0
    DrawSizedPic hBild1&,510,260 - 30,30;0

Endproc

Proc Texte

    Locate 2,2
    Print "Aus"
    Locate 5,2
    Print "Ein"
    Locate 8,5
    Print "Anlage"

endproc

rem Ausführung der Prozeduren
BMP
BMP1
Texte

Proc Taster1

    While %mousepressed

        DrawSizedPic hBild2& ,40 , 50 - 30, 30; 0

    EndWhile

    DrawSizedPic hbild1& ,40 , 50 - 30, 30; 0

Endproc

waitinput

Es sieht natürlich noch etwas groß und unübersichtlich aus beinhaltet aber die meisten Funktionen. Die Taster sind noch in einem anderen Programm weil diese "noch" nicht richtig funktionieren. Aber ich arbeite daran.

Das ist halt ein genaues Abbild der Schalttafel und dazu kommt das wir ja über eine WR64 ,über serielle COM-Schnittstelle, das ganze auch vom PC aus steuern sollen, recht komplexe Beschäftigungsmaßnahme.

Gruß

921 kB
Kurzbeschreibung: Bilder für Schaltung
Hochgeladen:30.05.2011
Ladeanzahl32
Herunterladen
 
30.05.2011  
 



Ach da lag der Fehler also achso bin registriert muss mich nur noch ein Bissl anpassen hier, was aufgrund der Problematik eher zweitrangig war.
 
30.05.2011  
 



Ah, verstehe.

Den Hinweis gab ich halt z.B. weil man dann eigene Beiträge beliebig bearbeiten kann bzw. weil es angemeldet mehr Möglichkeiten gibt.
 
30.05.2011  
 



Hehe, hm kannst dir den Code ja mal angucken und schauen ob ich das irgendwie bissl übersichtlicher gestalten kann (natürlich kommentiere ich das Ganze im Nachhinein).

Mit dem Taster werde ich denke ich mal schon fertig, dem habe ich den Kampf schon angesagt. Das Ganze soll dann wie im angehängten aussehen und natürlich funktionieren. Ich hänge mal Taster und Gesamtbild an

1.837 kB
Version:11
Kurzbeschreibung: Gesamtbild Schaltung
Hochgeladen:30.05.2011
Ladeanzahl99
Herunterladen
2 kB
Version:11
Kurzbeschreibung: Tasterfunktion
Hochgeladen:30.05.2011
Ladeanzahl136
Herunterladen
 
30.05.2011  
 



Achso im Endeffekt soll das Tor dann auch stoppen können und die Sensoren die das Tor passiert auch leuchten OMG ist doch recht komplex wenn man das als Gesamtbild betrachtet, aber uns wurde ja gesagt, habt ihr Probleme wendet euch ans Xprofan-Forum oder das Handbuch

Musste 7 Bände a 500 Seiten ausdrucken xD und quer über den Parkplatz schleppen, dachte schon das wär ne Strafarbeit
 
30.05.2011  
 



Was ich Dir empfehlen würde wäre das Programm gleich so zu schreiben das es mit nur 1 Hauptereignisschleife auskommt - also sodass WaitInput nur 1mal im Programm vorkommt.
 
30.05.2011  
 



Unbenannt (30.05.11)
Musste 7 Bände a 500 Seiten ausdrucken xD und quer über den Parkplatz schleppen, dachte schon das wär ne Strafarbeit


Eine Strafarbeit wäre es eher mit dem Buch arbeiten zu müssen wenn es auf nur 20 Seiten gedrückt wäre.
 
30.05.2011  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

10.364 Betrachtungen

Unbenanntvor 0 min.
RudiB.16.05.2021
kustg10.12.2019
Peter Max Müller13.03.2017
Sebastian Sprenger19.03.2013
Mehr...

Themeninformationen

Dieses Thema hat 3 Teilnehmer:

unbekannt (10x)
iF (7x)
unbekannt (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie