Imagebox skalieren

Hallo
ich würde gerne eine Imagebox beim draufklicken vergrössern, damit man das Bild besser sieht. Nun hab ich mir gedacht, das man beim Click einen Timer schalten könnte, der die Imgbox nach und nach vergrössert, damit das nicht so plump aussieht, sondern sich mit dem Auge vergrössert. Ich dachte so an 6 Stufen der Breiten und Höhenanpassung bis zur Endgrösse immer in 1/2 sekunde geschalten.

Ist das eine gute Idee, oder geht das anders besser???
Ich habs noch nicht ausprobiert und wollte erstmal hören, was ihr dazu sagt.

mfg Werner

Hallo Werner,

Ist das eine gute Idee, oder geht das anders besser???
Ich habs noch nicht ausprobiert und wollte erstmal hören, was
ihr dazu sagt.

ich habe mich an Deine Vorlage gehalten und auch nicht getestet.

Wenn Du nur sechs Schritte machst und die Pausen zu groß, dann ruckelt das. Wenn Du das änderst, wird es flimmern. Das Image ist für Animationen ungeeignet. Das Picture-Steuerelement unterstützt doublebuffering, da kann man Flimmern vermeiden.

Gruß Rainer

Grr
dusagtest doch extra, das ich das image nehmen soll zum Skalieren. Haste mich wieder nicht verstanden, oder?

Also was soll ich denn nun machen, es soll ncht innerhalb des Steuerfelds skalliert werden, sondern das Steuerfeld selbst, und möglichst so, das es nicht auffällt.

Kannste mir ma ein Bsp machen???

mfg Werner

Hallo Werner,

Grr

*gg*

dusagtest doch extra, das ich das image nehmen soll zum
Skalieren.

ja, weil das einfach ist. Aber nur, wenn es nicht um eine Animation geht.

Haste mich wieder nicht verstanden, oder?

Doch, ich habe Dich schon verstanden. Du willst so etwas bauen, wie Microsoft das in Vista eingebaut hat. Mehrere verkleinerte Bilder. Wenn Du auf eins davon mit der Maus gehst, soll das schön weich aufzoomen, damit man Details besser erkennen kann. Dafür ist das Image nicht geeignet, das flimmert.

Also was soll ich denn nun machen, es soll ncht innerhalb des
Steuerfelds skalliert werden, sondern das Steuerfeld selbst,
und möglichst so, das es nicht auffällt.

Das geht mit VB nicht ohne flimmern.
Nimm ein größeres Picture und kopier die Bilder da alle rein.
Dann kannst Du für jedes Bild Lage und Größe bestimmen und erst wenn Du damit fertig bist, sendest Du an das Picture ein Refresh. Autoredraw = True schaltet das Doublebuffering ein, dadurch kannst Du im Hintergrund arbeiten, erst wenn Du fertig bist, wird das Ergebnis sichtbar. Das Refresh ist auch mit dem Bildaufbau synchronisiert, deshalb flimmert das nicht.

Kannste mir ma ein Bsp machen???

Bilder zoomen und kopieren hatten wir doch schon.

Gruß Rainer

Hallo Werner,

ich hab’s nun doch mal ausprobiert …

Wie erwartet, das Image flimmert.

Bei AVB habe ich einen fertigen Code gefunden, der weich und ohne flimmern zoomt. Wenn Du Dir den Umfang ansiehst, weißt Du warum ich wenig Lust hatte, das ‚mal schnell‘ zu schreiben.

http://www.activevb.de/tipps/vb6tipps/tipp0707.html

Nur zum Vorführen, ohne Ahnung ob Du das dann auch verwendest war mir der Aufwand zu groß.

Gruß Rainer

Hi
das ist das falsche Bsp.
Ich sagte doch extra, es soll das Picturefeld selbst vergrössert werden
und nicht das Bild innerhald des Picturebox.
Darum gehts doch. Ich habe zuwenig Platz im Formular bzw. würde es sonst blöd aussehen. Per Klick soll die Picbox vergrössert werden mit dem Bild drinne. Und da war die Frage, ob man diese Vergrösserung so steuern kann, das es nicht so auffällt.

mfg Werner

Hallo Werner,

da war ja auch nur ein Bild, ganz fertigen Code wirst Du selten finden.

Aber versuch’s doch einfach mal mit dem Image, eventuell stört Dich das Flimmern ja nicht.

Option Explicit

Private Sub Timer1\_Timer()
 Static n As Integer, r As Integer
 Const f As Integer = 10
 If r = 0 Then
 r = f \* -1
 n = 400
 End If
 n = n + r
 If n \> 400 Then r = f \* -1
 If n 

Gruß Rainer

OT Art und Weise des Fragens

das ist das falsche Bsp.
Ich sagte doch extra, es soll das Picturefeld selbst
vergrössert werden
und nicht das Bild innerhald des Picturebox.

Hallo Werner,

wo, wie, wann sagtest du das eindeutig äh extra?

Und, Rainer ist ein edlerer Mensch als ich, ich hätte dir längst gesagt wo der Hammer hängt wenn du mir so gekommen wärest wie du es getan hast:

„“„Haste mich wieder nicht verstanden, oder?“""

Ich halte das für eine Frechheit.
Es liegt doch wohl an dir dein Problem so zu schildern daß man da auch genau darauf eingehen kann.

Gruß
Reinhard

Steht doch da, 19.09. 22:10, genau das was ich gerne möchte.

mfg Werner