kostenloser Webspace werbefrei: lima-city


PictureBox Gif transparent

lima-cityForumProgrammiersprachenBasic

  1. Autor dieses Themas

    aklasse

    Kostenloser Webspace von aklasse

    aklasse hat kostenlosen Webspace.

    Hey Guys,
    habe ein Spiel programmiert (http://highscore.haufen.at/) bei dem Bälle (PictureBox) sich bewegen. Deren Hintergrund soll transparent sein, damit es besser aussieht wenn sie sich überschneiden.
    Wie kann ich das realisieren?
    BackColor = Transparent reicht nicht.
    ImageBox gibt es in VB 2008 offenbar nicht mehr...

    Bitte um Hilfe....

    Grüße, Stefan
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Achso, genau, hier hatte ich doch auch noch was gepostet, was wegen dem DB-Crash nicht mehr da ist... :-)

    Nochmal kurz zusammengefasst:

    Nein, es existiert keine Möglichkeit überlappende PictureBoxen zu benutzen, die einen transparenten Hintergrund haben. Dies geht auch nicht mit irgendwelchen anderen Steuerelementen (weder 'Control'-Klassen noch 'Container'-Klassen).

    Du musst dir wohl oder übel was anderes einfallen lassen. In diesem Fall kommt man wirklich nicht drumherum wirklich programmieren zu müssen:biggrin:

    Du müsstest also quasi die Objekte selber in eine Bitmap zeichnen, die du dann in deiner Oberfläche ausgibst (schätze mal da hast du auch einfach ne große PictureBox, wo du alles reinzeichnen könntest). Dann musst du aber Benutzereingaben (z.B. MouseClick, ...) von der großen PictureBox abfangen und die den einzelnen Zeichenobjekten zuordnen (Position des Mauszeigers mit der Objekt-Position vergleichen).

    Auch das Bewegen der Objekte wird spaßig. Da musst du dich selber darum kümmern, dass der Hintergrund wiederhergestellt wird... bei Bewegungsintensiven Spielen kann man das noch so gut programmieren, es flimmert. Da wäre müsste man überlegen, ob man sowas wie OpenGL verwendet. Aber da kenn ich mich leider noch nicht aus.

    Beitrag zuletzt geändert: 14.5.2010 20:52:08 von tangoal
  4. Die einzige Möglichkeit mit der es wohl auch noch realisierbar wäre, wäre über die API.
    Weiß aber nicht ob das nicht noch zu "haarig" für dich ist.
    Wenn Interesse besteht poste einfach.
  5. aklasse schrieb: Hey Guys,
    habe ein Spiel programmiert (http://highscore.haufen.at/) bei dem Bälle (PictureBox) sich bewegen. Deren Hintergrund soll transparent sein, damit es besser aussieht wenn sie sich überschneiden.
    Wie kann ich das realisieren?
    BackColor = Transparent reicht nicht.
    ImageBox gibt es in VB 2008 offenbar nicht mehr...

    Bitte um Hilfe....

    Grüße, Stefan


    Das könnte dir unter Umständen weiterhelfen: http://www.gssg.de/net_translucent.htm
    Dort findest du ein Beispielprogramm (für VS 2003 und VS 2005). Ich weiß du programmierst mit VS 2008. Das Programm dürfte aber locker anpassbar sein (wenn es nicht sogar schon so funktioniert). Bedarf aber noch etwas Zeitbedarf, sich in dieses Programm einzuarbeiten, um die Quintessenz da herauszuholen. Diese Arbeit kann ich leider nicht für dich machen, habe selber genug um die Ohren. Dürfte dich aber in deiner Lösung um einiges nach vorne bringen. Transparenzen wären dann kein Thema mehr für dich:biggrin:

    Edit:
    Die in diesem Beispielprogramm verwendete Lösung schätze ich aber noch um einiges leichter und schneller umsetzbar ein als meine Lösung, die ich dir vor einigen Tagen geschrieben habe.

    Beitrag zuletzt geändert: 18.5.2010 20:23:07 von tangoal
  6. Autor dieses Themas

    aklasse

    Kostenloser Webspace von aklasse

    aklasse hat kostenlosen Webspace.

    Danke für die Tipps! Ich werde es mir genauer ansehen!
  7. d*************k

    Falls es noch aktuell ist schau dir mal folgendes an. Ist zwar ein Code für VB6, aber den kann man ja ggf. modifizieren
    http://www.vb-fun.de/cgi-bin/loadframe.pl?ID=vb/tipps/tip0111.shtml
  8. kann man denn nicht unter der eigenschaft tranz........key ne farbe auswählen, die transparent sein soll?
  9. rb-online schrieb: kann man denn nicht unter der eigenschaft tranz........key ne farbe auswählen, die transparent sein soll?


    Ja, das kann man tun. Es wird zwar transparent, aber bei zwei PictureBoxen wird die untere immer noch von der oberen überdeckt. Diesmal nicht mit irgendeiner Farbe, sondern mit der Transparenz. So sieht es immer noch so aus, als ob von der unteren PictureBox etwas "abgeschnitten" wurde. Hab es zur Sicherheit nochmal getestet ebengerade.

    Vielleicht mache ich auch etwas falsch. Das kann ich nie ausschliessen:-P Aber wenn du es hinkriegst, dann würde mich das auch interessieren. Also dann bitte einfach hier posten. Danke:thumb:
  10. schon gut. hätte ja sein können...
    bei formularen gehts nemlich.
  11. rb-online schrieb: schon gut. hätte ja sein können...
    bei formularen gehts nemlich.


    Ich kann mich doch auch irren. Wenn du einen Gegenbeweis hast, da würde ich mich sogar freuen. Das würde die Sache bei einigen Aufgaben ziemlich erleichtern. Probier es doch auch aus. Wenn du es schaffst, bist du mein King:king:
  12. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!