Suchergebnisse

Suchergebnisse 1-28 von insgesamt 28.

  • Benutzer-Avatarbild

    Guten Morgen, ich probiere gerade animierte GIFs in einer PictureBox "anzuhalten", und nur abzuspielen, wenn man mit der Maus drüberfährt. Wenn ich nun PictureBox1.Enabled = False mache, hält das Bild an, bei True spielt es ab. Einziges Problem: Wenn die PictureBox auf False ist, wird auch kein MouseHover-Ereignis erzeugt. Ist es irgendwie möglich, das ohne grösseren Aufwand zu umgehen? Hab zwar einen Post dazu gefunden, der ist aber von 2010...

  • Benutzer-Avatarbild

    @RodFromGermany Ich hab das animierte GIF im Internet gefunden und dann einfach per .Image-Eigenschaft in die PictureBox geladen, ohne dass ich Code dafür geschrieben hab. @oobdoo Es soll das erste Frame als Stanbdbild gezeigt werden. Du meinst mit einem Bildbearbeitungsprogramm einfach das gewünschte Frame extrahieren und als Standbild speichern und dann mit der .Image-Eigenschaft bei MouseHover das Bild wechseln?

  • Benutzer-Avatarbild

    @RodFromGermany So cool die Idee auch ist und funktioniert, es gibt aber Probleme mit den transparenten "Farben". Diese werden nicht korrekt extrahiert. Wahrscheinlich mach ich was bei den Einstellungen falsch. Kannst du mit den Screenshots im Anhang was anfangen? @-Franky- Der Code sieht ja ganz gut aus. Aber wenn ich das in Bitmap konvertier wird wahrscheinlich auch nix mit Transparenz zu machen sein oder? Das mit GDI+ ist für mich komplettes Neuland. Gibts da ein Tutorial oder sowas? @VaporiZ…

  • Benutzer-Avatarbild

    Zitat von VaporiZed: „Nö, Du kannst ja auch der Function eine PicBox mitgeben:“ Ja genau das wär jetzt meine nächste Frage gewesen. Perfekt und das funktioniert sogar ohne Flickern oder sowas...

  • Benutzer-Avatarbild

    @VaporiZed Leider gibt es nun doch ein kleines Problem damit. Da die PictureBox auf einem TableLayoutPanel liegt (genau Rand auf Rand) funktioniert das mit dem MouseMove net so ganz. Die Animation geht weiter, auch wenn ich mit der Maus die PictureBox verlasse.. @-Franky- Habs jetz mal mit dem ImageAnimator versucht. Das klappt ganz gut, nur scheint das Programm den .SizeMode = Zoom zu ignorieren. Gibt s da vielleicht ein zusätzliches Argument oder so? Und kann man vielleicht irgendwie festlegen…

  • Benutzer-Avatarbild

    @VaporiZed Ah ja klar natürlich. Also ein Form1_Move und gleichzeitig ein TabelLayoutPanel1_Move verwenden... Leider hab ich deinen Spoiler auch mit dem Rohcode noch nicht zum Laufen gebracht. Bevor ich an der Stelle mal weitermache: Spielt der denn das GIF dann immer bis zum Ende ab oder, wenn man mit der Maus die PictureBox verlässt, verharrt es dann auf dem gerade angezeigten Frame (wie es ist wenn ich mit PictureBox.Enabled arbeite...) Das ist bei manchen GIFS irreführend, weil man dann die …

  • Benutzer-Avatarbild

    Zitat von RodFromGermany: „ist Tinnef“ Was meinst du mit Tinnef? @-Franky- Super genauso hab ich mir das vorgestellt. Sehr cool auch die Möglichkeit in Zeile 47 sozusagen das Bild, zu dem "zurückgekehrt" wird, festzulegen... Das Ganze funktioniert aber nur wenn man das GIF direkt über einen Pfad lädt. Wenn man es aus den Ressourcen verwendet wird da nichts animiert. Gibt es eine Möglichkeit die Dateien ins Programmverzeichnis ausserhalb der Ressourcen mitzugeben und dann den Anwendungspfad mitte…

  • Benutzer-Avatarbild

    Zitat von -Franky-: „Nö, hab mal meine GIF als Ressource eingebunden und dann mit VB.NET-Quellcode animGif = My.Resources.animake geladen.“ Hm, vielleicht liegts am GIF selbst. Der @RodFromGermany hat ja glaub ich geschrieben, dass nicht alle Animated GIFS angezeigt werden... Zitat von -Franky-: „In dem Fall müsstest dann doch auf den Code von VaporiZed ausweichen“ Und was ist wenn ich einfach den Code von PictureBox1_Paint einfach ins Form1_Load packe? Natürlich modifiziert. Dann hab ich halt b…

  • Benutzer-Avatarbild

    Problem (fast) gelöst... Zur nächsten Frage: Ich würde gerne, wie gelernt, der folgenden Prozedur die jeweilige PictureBox übergeben. In etwa so: VB.NET-Quellcode (3 Zeilen) Leider wird beim Aufrufen: ImageAnimator.Animate(animGif, New EventHandler(AddressOf Me.Animate(PictureBox1))) Das Me.Animate (also eigentlich nur das Animate) rot unterstrichen. Der Editor schlägt mir nur vor, dass ich eine Methode oder Eigenschaft generiere...

  • Benutzer-Avatarbild

    Zitat von RodFromGermany: „Da musst Du genau die Parameter hinten dran hängen, die erwartet werden“ Also o und e noch hinter PictureBox1. Aber was für einen Wert geb ich dann denen beiden gibts da kein Default oder sowas? @-Franky- Wenn ich nun mehrere PictureBoxes habe, die alle animiert werden sollen, dann muss ich zusätzliche Instanzen des ImageAnimators anlegen stimmt das? Weil ich hab das Ganze jetzt mal mit einer weiteren PictureBox auf der Form probiert, die scheinen dann immer an einem z…

  • Benutzer-Avatarbild

    @-Franky- Ich hatte jetzt eher an ein Benutzersteuerelement gedacht, das ich dann einfach per DLL einbinde und durch das ich dann einfach meine PictureBoxen ersetze. Ist noch einfacher und besser portabel als eine "normale Klasse" denke ich... Edit: Wo pack ich denn dann den Code aus Form1_Closing rein? Ich hab das bei AnimGifButton_Dispose (so hab ich das Control genannt) reingetan und bekomm ungefähr tausend Fehlermeldungen wenn ich das Control auf die Form ziehen will. Ich glaube die ham alle…

  • Benutzer-Avatarbild

    @-Franky- Fehlermeldungen findest du im Anhang. Code sieht so aus: VB.NET-Quellcode (86 Zeilen) EDIT: Habs hinbekommen, indem ich den Varaiablen in Zeile 11 - 13 gleich bei der Deklaration gültige Werte gegeben hab.

  • Benutzer-Avatarbild

    @-Franky- Also so richtig klappen will das nicht. Mein Visual Studio macht mir Probleme. Siehe Screenshot. Das ist mir alles zu "unsicher"... Wie funktioniert denn das mit den vererbten Klassen? ich glaube ich versuch das dann doch mal damit. Wo fang ich da an und wo hör ich auf? Für jede PicBox eine Instanz erstellen>klar Im Konstruktor die Parameter übergeben >klar Wo es dann bei mir z. B. aufhört ist: Kann ich auch Events vererben? Also dass ich nicht im PictureBox1_MouseEnter-Event dann eine…

  • Benutzer-Avatarbild

    @RodFromGermany Hab ich schon gemacht und klappt. Was mir größere Sorgen macht ist der Fehler im Screenshot von meinem letzten Post. Eben noch ausgeführt und funktioniert, Projekt neu geladen und bääm...

  • Benutzer-Avatarbild

    @RodFromGermany Projekt öffnen, Form1.vb [Entwurf] öffnen --> Fehler @-Franky- So easy? Cool ich probier das gleich mal aus....

  • Benutzer-Avatarbild

    @-Franky- Soweit, so gut. Nur wo packe ich den Code aus Form1_Load und Form1_Closing rein? Eine PictureBox bietet diese Ereignisse nicht... Einfach jeweils eine Methode in der Klasse erstellen und dann extern über die Form aufrufen oder geht das eleganter?

  • Benutzer-Avatarbild

    @RodFromGermany Hab ein Windows Forms Projekt gemacht mit einem Benutzersteuerelement und einer Form zum Testen. Wenn alles läuft wollte ich die Form löschen, den Projekt Typ auf Klassenbibliothek ändern, das Ganze zu einer DLL kompilieren und feddich wäre mein eigenes Steuerelement. Ich glaub wir reden aneinander vorbei... Mein letzter Post bezieht sich aber auf ein anderes Projekt : Ein Test projekt zum Ausprobieren einer vererbten PictureBox EDIT: Achso jetzt hab ich verstanden wie du meinst …

  • Benutzer-Avatarbild

    Zitat von RodFromGermany: „Poste zunächst Deinen relevanten Code, insbesondere auch den Designer-Code, sonst raten wir hier, was Du sonst noch für Controls drinne hast.“ Könnte ich jetzt machen, aber ich denke das ist Tinnef, ums mal mit deinen Worten auszudrücken. Ich hab das Vererben der PictureBox jetzt als Weg gewählt, der sogar noch besser ist für meine Zwecke. Wenn jetzt nicht noch irgendwas Unvorhergesehenes passiert, bleib ich auch dabei. Ich hab zwar vor paar Tagen schon erfolgreich ein…

  • Benutzer-Avatarbild

    @RodFromGermany Ist in Arbeit, bzw. ich probier das erstmal selber hinzukriegen... @-Franky- Ich probier den ganzen Tag schon dran rum, aber nichts wird besser, egal was mir einfällt... 1. Problem: Beim Starten des Programms soll mein AnimGifButton ja bei der Variable Start die Wiedergabe anhalten. Es hält aber immer bei einem scheinbar zufälligen Frame an. Im MouseEnter-Event hingegen funktioniert das tadellos... Hab schon versucht den Code aus dem Setter der Property GIFPath in die Sub New() z…

  • Benutzer-Avatarbild

    Zitat von RodFromGermany: „Wenn GifPath (=Image) nicht leer ist, dann dispose das vorhandene Bild bevor Du das neue setzt.“ Hab ich gemacht: VB.NET-Quellcode (3 Zeilen) Der leere Konstruktor ist da bloss aus Testzwecken noch drin... Also dass das beim Laden der Form immer bei einem scheinbar zufälligen Frame anhält, ist mir ein Rätsel. Kann das sein, dass wenn die Form noch nicht ganz geladen ist, das ein oder andere Paint-Event "geschluckt" wird? Wie wärs wenn man das irgendwie in einen paralle…

  • Benutzer-Avatarbild

    @RodFromGermany Hab mal in Zeile 30 einen Haltepunkt gesetzt. Bei mir funktioniert das. animFrameCount = 20, was wohl der Anzahl der Frames des GIf-Files ist... Worauf willst du hinaus?

  • Benutzer-Avatarbild

    Zitat von -Franky-: „Auf die schnelle zusammen gezimmert“ Haha du bist echt krass. Auf die Schnelle? Da hätt ich Tage für gebraucht wahrscheinlich... Spass beiseite: Ich hab die _Tick folgendermassen geändert: VB.NET-Quellcode (22 Zeilen) Hintergrund: Das soll wie gesagt ein Play/Pause-Button werden, ich verwende nun als Auslöser statt _MouseEnter das _Click-Event. Bei jedem Klick soll zwischen einem Play und Pause-Frame abgewechselt werden. D.h. das Ausgangsframe ist ein Play-Bild, das andere e…

  • Benutzer-Avatarbild

    @-Franky- @RodFromGermany Alls gut habs jetzt so hingekriegt VB.NET-Quellcode (33 Zeilen) Einziges Manko: Beim ersten Klick ab Programmstart wird zuerst der ganze "Cycle" abgespielt und nicht bloss von m_StartIndex zu m_Stopindex. Ist bestimmt nur ein ganz kleines Problem, aber ic komm nicht drauf... Ich hab auch noch zwei Verständnisfragen: Warum das: VB.NET-Quellcode (3 Zeilen) Warum nennst du das Ereignis nicht gleich m_tmr_Tick? Und warum: Protected Overrides Sub Finalize() und nicht einfach…

  • Benutzer-Avatarbild

    @RodFromGermany Basisklasse ist dann die PictureBox, oder wie? und Overrides überschreibt die Funktion in der Basisklasse dann, sehe ich das richtig? Zitat von RodFromGermany: „(private) Namen sind Schall und Rauch“ Was meinst du damit? Meine Frage war so gemeint: Warum der Umweg über einen Konstruktor? Und was genau macht das Zitat von kafffee: „AddHandler m_tmr.Tick, AddressOf Timer_Tick“ Und mal noch eine allgemeine Frage: Diese Klasse, kann ich die auch in eine separate Datei auslagern, um s…

  • Benutzer-Avatarbild

    @RodFromGermany Was heisst "ein Event abonnieren"? Und: Kann man den Zugriffsmodizierer "Protected" auch weglassen?

  • Benutzer-Avatarbild

    Ich hab das Ganze jetzt mal mit einem anderen GIF ausprobiert. Nur wird dieses schon beim Laden ohne Klick in einer Endlosschleife abgespielt. Wenn ich dann draufklicke gibt es einen Fehler in Zeile 9, Post 57: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt mit VB.NET-Quellcode (3 Zeilen) Kann das sein dass das einfach nur an der GIF-Datei liegt? Ich hab das mit allen nur erdenklichen Werten für StartIndex und StopIndex probiert, aber es hilft nichts. Und natürlich darauf geacht…

  • Benutzer-Avatarbild

    @RodFromGermany OK dann wird mir einiges klar. So macht das Ganze keinen Sinn für mich, ausser ich fang jetzt an die Gifs zu editieren. Schade eigentlich. Ich kümmer mich jetzt erstmal um den Rest meines Projekts, vielleicht hab ich später Lust mich da wieder reinzuhängen.. Trotzdem viel gelernt (v. a. das mit den vererbten Klassen). Also danke für die Mitarbeit und ich schließe jetzt das Thema fürs Erste...

  • Benutzer-Avatarbild

    Zitat von RodFromGermany: „Du brauchst Deinen GIF-Editor, der GIFs macht, die Du darstellen kannst. Vorhandene GIFs zerlegen kannst Du mit dem IrfanView.“ Ist schon alles passiert, hab im Internet Gif-X gefunden, damit geht beides. Bin aber noch nicht dazu gekommen, die Möglichkeiten ausführlich zu testen. Eine Einstellung zum automatisch animieren oder auch nicht hab ich bis jetzt noch nicht gefunden... @-Franky- Wow das hast du alles von Null aus dem Ärmel geschüttelt? Ich mein verstehen tut m…