Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

ubyte

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
alfonsospringer



Anmeldungsdatum: 27.04.2006
Beiträge: 445

BeitragVerfasst am: 28.06.2006, 19:47    Titel: ubyte Antworten mit Zitat

Was ist ubyte für ein Variablentyp?



Code:
    * 'Code zum laden einer 256-Farben Bitmap
    * '
    * 'Das Bild (ampeln.bmp) muss natürlich im selben Ordner
    * 'wie die .exe liegen, und sollte nicht größter als 100.000 Bytes
    * 'sein.
    *
    * screen 18
    * dim shared bild(100000) AS UBYTE
    * bload "ampeln.bmp", varptr(bild(0))
    * put (0,0), bild
    * sleep
*




kann mir jemand den code erklären, ich hab vorher nur mit qbasic gearbeitet
_________________
Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia

ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 28.06.2006, 19:58    Titel: Antworten mit Zitat

Also Ubyte ist ein Datentyp, wo man werte von 0 bis 255 speichern kann.

Wird oft verwendet, um Strings oder Dateien zu speichern, da ubyte genau so groß ist wie ein byte, nur eben ohne vorzeichen.

In dem Code wird zuerst ein Fenster (640*480) geöffnet.

"Dim shared bild(100000) AS Ubyte" erstellt ein Array "bild", was man auch in SUBs ansprechen kann. Es kann Daten bis ungefähr 100kb aufnehmen.

"bload 'ampeln.bmp',varptr(bild(0))" lädt die .bmp datei "ampeln" in das array. Varptr(bild(0)) gibt einen Pointer auf das array zurück. EIn Pointer zeigt auf die Speicheradresse im arbeitsspeicher, gibt also an, wo die daten liegen.

"put (0,0),bild" Zeichnet das zuvor geladene Bild an den Bildschirmkoordinaten (0,0) also ganz oben links.

"Sleep" wartet solange, bis eine taste gedrückt wurde zwinkern

Wenn ich mich etwas kompliziert ausgedrückt habe, dann melde dich happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
alfonsospringer



Anmeldungsdatum: 27.04.2006
Beiträge: 445

BeitragVerfasst am: 28.06.2006, 20:10    Titel: Antworten mit Zitat

danke, dass versteh ich grade noch cool
_________________
Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia

ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 29.06.2006, 12:20    Titel: Antworten mit Zitat

Das U in UByte bedeutet übrigens Unsigned, d.h. nicht-vorzeichenbehaftet.

Nur so am Rande: Bilder sollte man allerdings in einen mit Imagecreate erstellten Puffer laden, die obige Methode ist schon etwas veraltet...

jb
_________________
Elektronik und Programmieren
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
alfonsospringer



Anmeldungsdatum: 27.04.2006
Beiträge: 445

BeitragVerfasst am: 29.06.2006, 13:36    Titel: Antworten mit Zitat

komischerweise funktioniert die obrige methode bei mir auch nicht.

[qutoe:"jb"]Nur so am Rande: Bilder sollte man allerdings in einen mit Imagecreate erstellten Puffer laden, die obige Methode ist schon etwas veraltet...
[/quote]

kannstde mir das mal genauer erklären ? ich hab sowas noch nie gemacht, hab kein plan was ein mit imagecreate erstellter puffer ist, wie man sowas macht
_________________
Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia

ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 29.06.2006, 13:45    Titel: Antworten mit Zitat

Also:

Code:

Dim bild As Any Ptr   'erstellt einen Pointer

Screen 18,32  'imagecreate und bload klappt ohne screenaufruf NICHT

bild=imagecreate(breite,hoehe)   'hier die breite und höhe des bildes eintragen
bload "bild.bmp",bild

Put(0,0),bild
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
alfonsospringer



Anmeldungsdatum: 27.04.2006
Beiträge: 445

BeitragVerfasst am: 29.06.2006, 14:07    Titel: Antworten mit Zitat

danke
_________________
Die Antworten zu fast allen Fragen des Lebens findest du entweder im MonsterFAQ oder der Befehlsreferenz - Und wenn du gar nicht mehr weiter weisst ? -> Wikipedia

ALLE RECHTSCHREIBFEHLER DIE ICH MACHE SIND BEABSICHTIGT, DAMIT DIE LEUTE, DIE SPAß DARAN HABEN SOLCHE ZU FINDEN, ETWAS ZU TUN HABEN
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz