| |
Fortgeschrittene ProgrammierungPictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: HarryLobster | Datum: 14.02.18 12:06 |
| Hallo,
welche eleganten Möglichkeiten gibt es, eine pictureBox mit der Maus auch über ein Formular hinweg (z.B. auf ein anderes Formular) zu verschieben ? Ich könnte dies mittels eines eigenen Drag-Formulares machen, aber das finde ich etwas unelegant, es sei denn, ich kann das Formular on the fly erzeugen aus dem Nichts, aber dazu fehlt mit das Wissen. Ich kann nur Objekte innerhalb eines bestehenden Formulares erzeugen...
Muss doch prinzipiell eine nicht ganz ungewöhnliche Anforderung sein, finde dazu aber nichts sinnvolles bei Google. Suche mich schon wund...
Wäre sehr dankbar, wenn mir hier jemand einen Tipp geben könnte ! | |
Re: PictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: Manfred X | Datum: 14.02.18 16:25 |
| Hallo!
Wieso willst Du ein Control auf eine andere Form verschieben?
Damit würdest Du Dein Formular vermutlich zerstören (Routinen
für das Eventhandling etc.)
"Verschiebe" statt dessen den Inhalt der Picturebox (Image). | |
Re: PictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: HarryLobster | Datum: 14.02.18 17:39 |
| Dann habe ich mich wohl nicht klar genug ausgedrückt.
Noch einmal ganz einfach:
Gegeben ist ein Formular mit einer Picturebox, welches z.B. ein Foto beinhaltet. Nun möchte ich darauf klicken und dann quasi per Drag & Drop das Foto verschieben können und zwar so, dass man das Foto weiterhin sieht und man es auch außerhalb des Formulars bewegen kann. Am einfachsten wäre es, wenn man den Mousepointer einfach mit dem Inhalt der Picturebox versehen könnte, aber das geht leider nicht, da ein Bild <> .cur oder .ico dafür nicht geeignet ist, wenigstens nicht meines Wissens. Ich kann bisher nur den Inhalt der Picturebox in ein zweites Formular kopieren und dieses dann an derselben Stelle erscheinen lassen und dann verschieben. Das sieht zwar genauso aus, wie ich es will, aber es ist irgendwie gefrickelt, da muss es doch was besseres geben... | |
Re: PictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: Manfred X | Datum: 14.02.18 19:05 |
| Das Bild in Originalgröße beim Verschieben sichtbar zu machen
halte ich nicht für zweckmäßig.
Du könntest für das Verschieben zunächst ein Thumbnail des Bildes
erzeugen.
Mit VB6-Controls ist das Anzeigen beim Verschieben nur auf die Weise
möglich, wie Du es bereits ausprobiert hast.
Eventuell kannst Du im Internet nach (kostenpflichtigen) Controls suchen,
die diese Funktionalität (als ActiveX-Komponente) besitzen. | |
Re: PictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: HarryLobster | Datum: 15.02.18 16:37 |
| "Das Bild in Originalgröße beim Verschieben sichtbar zu machen halte ich nicht für zweckmäßig."
Tja, aber genau das ist ja hier der Witz.
Ich danke Dir für Deine Kommentare und gehe davon aus, dass Du weißt, wovon Du sprichst. | |
Re: PictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: Manfred X | Datum: 15.02.18 17:24 |
| Hallo!
Gewöhnlich habe ich eine gewisse Erfahrung zu den Themen,
über die ich einen Beitrag erstelle.
In den mir bekannten Anwendungen werden beim Drag/Drop
große Pictures zunächst auf eine bestimmte Maximalgröße
verkleinert (oft ca. 200 Pixel) und halbtransparent
angezeigt. Das wird u.a. gemacht, damit der Benutzer sich
beim Verschieben auf dem Bildschirm orientieren kann. | |
Re: PictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: Kuno60 | Datum: 15.02.18 23:26 |
| Hallo,
Steuerelemente sind immer an ein bestimmtes Formular gebunden.
Ich mache das immer mit einem Formular ohne Border. So lassen sich Spielfiguren, Puzzleteile und Ähnliches aus einem Fenster in ein anderes Fenster übertragen und es sieht richtig gut aus.
Wenn man es richtig macht, merkt man gar nicht, das dies keine PictureBox ist.
Außerdem kann das bewegte Formular sogar eine nicht-Rechteckige Form bekommen (z.B. Kreis). | |
Re: PictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: Franki | Datum: 19.02.18 02:03 |
| Hallo,
hört sich gut an, aber erkläre doch mal, was für einen wesentlichen Unterschied es macht, ob das entsprechende Formular eine Rand hat oder nicht (abgesehen von der Optik).
Wie regelst du unter VB6 den Verschiebevorgang genau? (Codebeispiel?)
Gruß
Frank | |
Re: PictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: VB3-Guru | Datum: 19.02.18 10:50 |
| Lass dich nicht entmutigen. Das geht schon. Du brauchst einfach nur eine weitere Form mit Picturebox. Hier kopierst du das Originalbild hinein, verschiebst diese Form und wenn du sie losläst kopierst du das Bild auf deine Form2.
Beste Grüße,
vb3-guru | |
Re: PictureBox über Formulargrenze hinweg bewegen / VB6 | | | Autor: HarryLobster | Datum: 05.03.18 09:01 |
| Das ist als zusätzliches Feature eine gute Idee für mein Projekt. Habe mein eigentliches Problem nun doch wieder über eine eigenes Formular gelöst, wie auch andere hier empfohlen hatten. Merkt kein Mensch, aber ich bin trotzdem nicht so glücklich. Aber ich konnte es auch mit OLE-Drag/Drop kombinieren und nun fühlt sich alles doch ganz sauber an... | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Neu! sevCoolbar 3.0
Professionelle Toolbars im modernen Design!
Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|