Löschen eines Image im Type mit Freeimage(hat sich erledigt)
Übersicht

SilbersurferBetreff: Löschen eines Image im Type mit Freeimage(hat sich erledigt) |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo Leute habe da ein kleines Problem!
bin dabei eine Löschfunktion für meine Types zu schreiben, leider läuft sie nicht obwohl Ich meine Sie richtig geschrieben zu haben folgendes Problem! ![]() ![]() solange ich ohne Freeimage arbeite läuft die Funktion so wie erwartet, die Types werden sauber gelöscht füge ich jedoch FreeIimage hinzu kommt die Fehlermeldung " Invalid Image Handle " was mach ich da falsch? ich kann da keinen Fehler finden. hier der Code dazu Code: [AUSKLAPPEN] Function xs_liste_delete (xs_list.XS_listbox)
For xs_eintrag.xs_listeintrag=Each xs_listeintrag If xs_eintrag\listbox=xs_list If xs_eintrag\icon >0 FreeImage xs_eintrag\icon If xs_eintrag <> Null Delete xs_eintrag End If Next xs_list\count=0 xs_list\number=0 End Function |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
- Zuletzt bearbeitet von Silbersurfer am Fr, März 30, 2007 13:02, insgesamt einmal bearbeitet
Beatenvoy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du musst nicht das Image löschen, das bleibt doch im Programm drinne.
Die Function nimmt ja nur ein vorhandenes Image und speichert es als Zahl, in einen type. Du musst nur die Stelle Löschen wo der Type mit dem Image eingetragen ist . Darf ich mal fragen was du den vor hast? Vieleicht hab ichs auch falsch verstanden! |
||
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hm das habe ich jetzt nicht ganz verstanden Beatenvoy
aber folgendes, mein Image liegt im Hauptprogramm, das will ich ja nicht löschen ! da ich es wieder benötige was ich mache ist, das ich den Type xs_eintrag\icon dieses Image übergebe. Wenn ich dich jetzt richtig verstanden habe wird dann nur ein link zum Image übergeben oder? aber wenn das so ist warum erhöht sich dann der Speicher? edit: es geht um ein File Requester für ein Proggy |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
Beatenvoy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
kannst du mir mal die Function oder die Vorgehensweise als Code wiedergeben, wie du die Types Erstellst ?
normal speicherst du im Type nur eine Zahl, oder einen Namen ab. Aber nicht das Image selber, weil das lädst du ja vor her Hauptschleife. |
||
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok hier habe ich die Funktionen die für das eintragen zuständig sind!
einmal die übergabe der Liste! Code: [AUSKLAPPEN] Function xs_fr_dat_listen(a)
If a<1 Return For t=0 To a-1 XS_Add_Listindex (xs_fr_verz,xs_fr_dat$(t),xs_file_image) Next XS_Setslider_Value(xs_fr_verz\sld,1) End Function Danach die Übergabe in das Type! Code: [AUSKLAPPEN] Function XS_Add_Listindex(xs_list.XS_listbox,eintrag$,icon=0)
If xs_list.XS_listbox =Null Return xs_list\count=xs_list\count+1 xs_eintrag.XS_listeintrag =New XS_listeintrag xs_eintrag\listbox=xs_list xs_eintrag\eintrag$=eintrag$ xs_eintrag\icon=icon xs_draw_listeintrag(xs_eintrag\listbox) End Function hoffe das es dir jetzt weiter hilft was ich damit meine[img][/img][/url] |
||
- Zuletzt bearbeitet von Silbersurfer am Fr, März 30, 2007 11:50, insgesamt einmal bearbeitet
![]() |
aMulSieger des Minimalist Compo 01/13 |
![]() Antworten mit Zitat ![]() |
---|---|---|
In diesem Fall musst du das Image wirklich nicht löschen, da nur das Handle übergeben wird. Gelöscht werden müsste es nur, wenn du für jeden Type-Eintrag ein eigenes Image erstellen würdest.
Achja, und die For-Schleife in der Lösch-Funktion kannst du dir übrigens sparen, du übergibst doch schon dien zu löschenden Eintrag als Parameter. Also anstatt der Schleife einfach folgender Code: [AUSKLAPPEN] If xs_eintrag <> Null Delete xs_eintrag
EDIT: Oh, ich hab gerade gesehen das du zwei verschiedene Types verwendest, dann brauchst du natürlich die Schleife ![]() |
||
Panic Pong - ultimate action mashup of Pong and Breakout <= aktives Spiele-Projekt, Downloads mit vielen bunten Farben!
advASCIIdraw - the advanced ASCII art program <= aktives nicht-Spiele-Projekt, must-have für ASCII/roguelike/dungeon-crawler fans! Alter BB-Kram: ThroughTheAsteroidBelt - mit Quelltext! | RGB-Palette in 32²-Textur / Farbige Beleuchtung mit Dot3 | Stereoskopie in Blitz3D | Teleport-Animation Screensaver |
- Zuletzt bearbeitet von aMul am Fr, März 30, 2007 11:34, insgesamt 3-mal bearbeitet
Beatenvoy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hmm... du musst ja nur den Eintrag löschen.
Code: [AUSKLAPPEN] If .....blablabla........ then Delete xs_eintrag.xs_listeintrag
Ist ja wie bei einen schuss, der den Bildschirm verläst. Nur hall mit anderen Kriterien zum löschen ^^ |
||
Silbersurfer |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hm erst einmal schönen Dank für die rasche Hilfe!
Ich verstehe dann aber immer noch nicht, warum der Speicher größer wird ! dann habe ich noch eine frage ![]() kann man so eine Funktion erstellen ? und wenn ja wie lösche ich dann das Image ? Code: [AUSKLAPPEN] Function xs_fr_gethintergrund()
xs_temp=CreateImage(xs_screenw,xs_screenh) CopyRect (0,0,xs_screenw,xs_screenh,0,0,0,ImageBuffer( xs_temp)) Return xs_temp End Function |
||
-------------------------------------------------------
XP 2000+ 512DDR Radeon 9800 XL 340GB HD Hompage : http://home.arcor.de/silbersurfer01/ Is Bob engine http://home.arcor.de/silbersur.../Isbob.zip |
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
du kannst alles tun was du willt^^ Geht dürfte gehen würde aber anstatt 0 FrontBuffer() oder Backbuffer() schreiben allein weil ich in nem jahr net mehr weiß was nun automatisch kopiert wird...
diese image hat ihre eigene Adresse d.h. wenn du kannst freeimage nutzen oben hast du ja mit einer Adresse gearbeitet die du allen types gegeben hast... bei freeimage hast du die adresse gelöscht und der nächste type gab halt an das die adresse tot ist.... |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group