Forum | | | | Roberto Neu | Geht das?? Bmp in einer Schleife laden Gestern habe ich von 0-2uhr Morgends Versucht das hinzubekommen. Aber es kommt immmer die Fehlermeldung BMP nicht ladbar |
| | | | |
| | Jörg Sellmeyer | | | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 02.08.2009 ▲ |
| |
| | Rolf Koch | Hi Roberto Machs beste draus, vieles hast Du noch nicht verstanden. Zum Beispiel: Man sollte \ zwischen Pfaden und Dateien schreiben. While ohne Endwhile kann nicht funktionieren Whilenot e% ist ok aber warum hast Du diese Bedingung als Ende nicht genutzt If/Elseif hast Du nicht verstanden, Du nutzt nur IF ENDIF Und immer noch dieses sinnlose GOTO Vorallem in einer Schleife musst Du nicht das Waitinput unten hin schreiben und dafür ein GOTO nutzen, ich hab Dir jetzt aufgezeigt, daß ohne Goto, richtiges Waitinput (Stelle) und richtiges Endwhile (Stelle) eine Schleife immer durchlaufen wird. Also nocheinmal: Lass das Goto weg und nutze: Schleifen, If/Elseif und Prozeduren. KompilierenMarkierenSeparierendeclare load&, e%, button&, back&, Name$, text&, A%
Def DragAcceptFiles(2) !"SHELL32","DragAcceptFiles"
Def DragFinish(1) !"SHELL32","DragFinish"
Def DragQueryFile(4) !"SHELL32","DragQueryFileA"
Declare DragFile#,lade&,lade1&,beenden&,beenden1&,neu&,neu1&
Dim DragFile#, 261 In diesem Bereich finden die gedroppten Dateinamen Platz
WINDOW Optionen
WindowTitle "Photoviewer Pro"
Window 50,20 - 800,600
DESKTOP
usepen -0,-0,@RGB(31,31,31)
loadbmp "files\pp.bmp",100,0;0
loadbmp "files\to.bmp",0,0;0
POPUP MENÜ
Popup "Bildgröße 600x500"
PROC BUTTONS
lade& = Create("hpic",-1,"files\lade.BMP")
lade1& = Create("PicButton",%HWnd,lade&,0,0,100,20)
Create("Tooltip",%HWnd,lade1&,"Suchen sie sich ein Bild aus!")
beenden& = Create("hpic",-1,"files\be.bmp")
beenden1& = Create("PicButton",%HWnd,beenden&,0,526,100,20)
Create("Tooltip",%HWnd,beenden1&,"Das Programm wird beendet!")
neu& = Create("hpic",-1,"files\entf.bmp")
neu1& = Create("PicButton",%HWnd,neu&,0,20,100,20)
Create("Tooltip",%HWnd,neu1&,"Bild wird Entfernt!")
ENDPROC
buttons
Whilenot e%
waitinput
If Clicked(lade1&)
Name$ = @LoadFile$("Bilddateien","*.BMP")
While Name$ <> ""
If Name$ <> ""
LoadBMP Name$,101,1-0,0;0
WindowTitle "Photoviewer Pro - [" + Name$ + "]"
Endif
elseif Clicked(neu1&)
loadbmp "files\pp.bmp",100,0;0
elseif Clicked(beenden1&)
e%=1 ist ja Schleifenende also Ende
endif
endwhile
end
|
| | | | |
| | Roberto Neu | @ Rolf Vielen Dank Ich hatte es am anfang auch mit Elseif geschrieben. Aber dann hat es egal auf welchen Button ich geklickt habe immer nur das Bild geladen^^ Und das Bild ladet es bei mir immer noch nicht?? |
| | | | |
| | Rolf Koch | Achso, Du meinst diese ENTF? OK ist logisch, denn nachdem Du Deine Bilder gewählt hast und dann auf ENTF klickst, musst Du vorher ins aktuelle Verzeichnis zurückwechseln. |
| | | | |
| | Roberto Neu | Also muss ich das ENTF mit IF schreiben oder ?? Oder eine neue Schleife machen ?? |
| | | | |
| | Rolf Koch | OK - gibt viele Möglichkeiten der Pfadermittlung hier eine ganz PROFANE: KompilierenMarkierenSeparierendeclare load&, e%, button&, back&, Name$, text&, A%
Def DragAcceptFiles(2) !"SHELL32","DragAcceptFiles"
Def DragFinish(1) !"SHELL32","DragFinish"
Def DragQueryFile(4) !"SHELL32","DragQueryFileA"
Declare DragFile#,lade&,lade1&,beenden&,beenden1&,neu&,neu1&,pfad$
Dim DragFile#, 261 In diesem Bereich finden die gedroppten Dateinamen Platz
Pfad sichern - Heimverzeichnis
Ausklammern wenn zur Exe compiliert wird:
pfad$=getdir$("@") Aber Vorsicht - wenn Exe erstellt wird sollte hier $progdir stehen
Wenn Exe erstellt wird diese:
pfad$=$Progdir
WINDOW Optionen
WindowTitle "Photoviewer Pro"
Window 50,20 - 800,600
DESKTOP
usepen -0,-0,@RGB(31,31,31)
loadbmp "files\pp.bmp",100,0;0
loadbmp "files\to.bmp",0,0;0
POPUP MENÜ
Popup "Bildgröße 600x500"
PROC BUTTONS
lade& = Create("hpic",-1,"files\lade.BMP")
lade1& = Create("PicButton",%HWnd,lade&,0,0,100,20)
Create("Tooltip",%HWnd,lade1&,"Suchen sie sich ein Bild aus!")
beenden& = Create("hpic",-1,"files\be.bmp")
beenden1& = Create("PicButton",%HWnd,beenden&,0,526,100,20)
Create("Tooltip",%HWnd,beenden1&,"Das Programm wird beendet!")
neu& = Create("hpic",-1,"files\entf.bmp")
neu1& = Create("PicButton",%HWnd,neu&,0,20,100,20)
Create("Tooltip",%HWnd,neu1&,"Bild wird Entfernt!")
ENDPROC
buttons
Whilenot e%
waitinput
If Clicked(lade1&)
Name$ = @LoadFile$("Bilddateien","*.BMP")
While Name$ <> ""
If Name$ <> ""
LoadBMP Name$,101,1-0,0;0
WindowTitle "Photoviewer Pro - [" + Name$ + "]"
Endif
elseif Clicked(neu1&)
chdir pfad$
loadbmp "files\pp.bmp",100,0;0
elseif Clicked(beenden1&)
e%=1 ist ja Schleifenende also Ende
endif
endwhile
end
|
| | | | |
| | Roberto Neu | Juhuuuu jetzt hab ichs Kapiert. Das Programm bleibt in dem Ordner Files Und wenn ich dan loadbmp "filesild.bmp",0,0;0 eingeb Sucht es in dem Ordner Files nach dem Ordner Files und dan gibt es ja nicht ^^ Ich hab das jetzt so gemacht KompilierenMarkierenSeparierendeclare load&, e%, button&, back&, Name$, text&, A%
Def DragAcceptFiles(2) !"SHELL32","DragAcceptFiles"
Def DragFinish(1) !"SHELL32","DragFinish"
Def DragQueryFile(4) !"SHELL32","DragQueryFileA"
Declare DragFile#,lade&,lade1&,beenden&,beenden1&,neu&,neu1&,pfad$
Dim DragFile#, 261In diesem Bereich finden die gedroppten Dateinamen Platz
Pfad sichern - Heimverzeichnis
Ausklammern wenn zur Exe compiliert wird:
pfad$=getdir$("@")Aber Vorsicht - wenn Exe erstellt wird sollte hier $progdir stehen
Wenn Exe erstellt wird diese:
pfad$=$Progdir
WINDOW Optionen
WindowTitle "Photoviewer Pro"
Window 50,20 - 800,600
DESKTOP
usepen -0,-0,@RGB(31,31,31)
loadbmp "files\pp.bmp",100,0;0
loadbmp "files\to.bmp",0,0;0
POPUP MENÜ
Popup "Bildgröße 600x500"
PROC BUTTONS
lade& = Create("hpic",-1,"files\lade.BMP")
lade1& = Create("PicButton",%HWnd,lade&,0,0,100,20)
Create("Tooltip",%HWnd,lade1&,"Suchen sie sich ein Bild aus!")
beenden& = Create("hpic",-1,"files\be.bmp")
beenden1& = Create("PicButton",%HWnd,beenden&,0,526,100,20)
Create("Tooltip",%HWnd,beenden1&,"Das Programm wird beendet!")
neu& = Create("hpic",-1,"files\entf.bmp")
neu1& = Create("PicButton",%HWnd,neu&,0,20,100,20)
Create("Tooltip",%HWnd,neu1&,"Bild wird Entfernt!")
ENDPROC
buttons
Whilenot e%
waitinput
If Clicked(lade1&)
Name$ = @LoadFile$("Bilddateien","*.BMP")
While Name$ <> ""
If Name$ <> ""
LoadBMP Name$,101,1-0,0;0
WindowTitle "Photoviewer Pro - [" + Name$ + "]"
Endif
elseif Clicked(neu1&)
loadbmp "pp.bmp",100,0;0
elseif Clicked(beenden1&)
e%=1ist ja Schleifenende also Ende
endif
endwhile
end
|
| | | | |
|
AntwortenThemenoptionen | 7.463 Betrachtungen |
ThemeninformationenDieses Thema hat 3 Teilnehmer: |