mit ner for-schleife und nem line befehl denke ich mal, du machst die untere linie, dann machste eben so viel wie du willst mit der for schleife nach oben
Hallo,
ich habe ein t6963C Display an meinem Mega16 hängen. klappt alles einwandfrei. jetzt möchte ich aber einen Balken darstellen, der sich in der höhe verändert. mit einem Hd44780 display kann ich ja den lcd Designer benutzen und die zeichen definieren. aber wie mache ich das bei einem grafikdisplay ?
mfg Kay
mit ner for-schleife und nem line befehl denke ich mal, du machst die untere linie, dann machste eben so viel wie du willst mit der for schleife nach oben
Linus Torvalds, Entwickler von LinuxIch will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
Hi,
Wenn man jedesmal den ganzen Balken neu zeichnet, dann wird es
recht langsam. Kommt aber auf die Breite des Balkens an.
Je schmäler um so schneller geht's.
Ich habe das gleiche Problem.
Ich denke, ich werde nur die Änderungen neu zeichnen und nicht den ganzen Balken.
Also, letzten Wert nehmen und von da nach oben zeichen oder bei negativem Wert vom letzten zum aktuellen per Line Befehl löschen.
Hab's aber bis jetzt aus Zeitgründen noch nicht ausprobiert.
Gruß
Christopher
der prozi aufm display iss zwar relativ schnell, aber nicht so schnell, was du sachst iss richtig, und ich verwende es jedes mal wenn ich sowas mache ^^
Linus Torvalds, Entwickler von LinuxIch will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
danke für die antworten,
werde es mal mit den line befehlen ausprobieren. melde mich dann, wenn es geklappt bzw. nicht geklappt hat
mfg Kay
hi,
habe das mit den line befehlen jetzt mal ausprobiert. aber irgendwie ist das nicht zufriedenstellend. ich schreibe jedesmal die lines neu. das is sehr langsam. wie meint ihr das mit dem "nur den neuen wert schreiben" ?
mfg Kay
anders als mit lines geht das nicht, warum soll das langsam sein, poste mal den quellcode bitte
Linus Torvalds, Entwickler von LinuxIch will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
hi,
also:
jetzt will ich z.B. noch ne 5. Zeile schreiben. Das ist dann nicht das problem. nur was mache ich, wenn ich jetzt nur 1. zeile schreiben will. muss ich dann alle löschen und dann 1. zeile schreiben ?Code:Sub Balken1(x1) Line(64 , 60) -(74 , 60) , 1 Line(64 , 58) -(74 , 58) , 1 Line(64 , 56) -(74 , 56) , 1 Line(64 , 54) -(74 , 54) , 1 End Sub
mfg Kay
ja, aber nicht mit cls oder so, sondern das selbe nochmal was du da oben geschrieben hast, aber immer den dritten parameter = 0;
mach mal dein icq an, dann kann ich dir das besser erklären
Linus Torvalds, Entwickler von LinuxIch will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
Ich meine das so:wie meint ihr das mit dem "nur den neuen wert schreiben" ?
Angenommen, du stellst die Werte von 0-100 dar.
Dein erster Wert ist zB. 50
Wenn der nächste Wert 51 ist, dann mußt du nur die Lines von 50-51 zeichnen und nicht wieder von 0-51
Ist der zweite Wert kleiner, zB. 40, dann löschst du von 50 -40 alle Lines.
Der zweite Wert wird dann zum neuen Vergleichswert.
Beim dritten Wert wird dann mit dem verglichen.
Dann wird der zum neuen Vergleichswert, der nächste Wert kann kommen.
Uuups, das war jetzt glaube ich etwas unverständlich...
Bei dickeren Balken kann die "jedes mal komplett neue" Darstellung schon recht langsam sein, wenn man schnell wechseln will (zB. Audio Anzeige)
Gruß
Christopher
Lesezeichen