![]() |
Die Form der Form...
Welch' ein poetischer Titel :mrgreen:
Moin erstmal, Ich suche mich seit Tagen halbtot nach einer Möglichkeit meinen Formularen geeignete Formen zu verpassen (Fürs erste würden mir auch nur runde Ecken mit anpassbarem Radius reichen). Nach zahlreichen Erkundigungen kam ich jedoch nicht zu einem Ergebnis doch zu vielen Techniken. Da wären:
Stellt sich also die Frage, wie kann ich Formulare basteln die anpassbar sind aber dennoch mit den entsprechenden Codes(WM_SYSCOMMAND-Messages, in diesem Fall) völlig dynamisch und normal im verhalten sind? Ich hoffe jemand kann mir helfen, es muss doch eine Möglichkeit geben, der WMP oder WinAmp machen das doch auch. Gruß, Max |
Re: Die Form der Form...
So einfach wie du dir das vorstellst ist es AFAIR trotzdem nicht. Eine Möglichkeit ein Form abzurunden wäre unter anderem mit folgender Prozedur:
Delphi-Quellcode:
Ich wage zu behaupten das WinAMP & Co spezielle
procedure MakeRounded(Control: TWinControl);
var R: TRect; Rgn: HRGN; begin with Control do begin R := ClientRect; rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, 20, 20); Perform(EM_GETRECT, 0, lParam(@r)); InflateRect(r, - 5, - 5); Perform(EM_SETRECTNP, 0, lParam(@r)); SetWindowRgn(Handle, rgn, True); Invalidate; end; end; ![]() |
Re: Die Form der Form...
Moin!
Danke erstmal für deine Antwort! Mir ist schon klar, das sowas durchaus kompliziert ist. Das Problem an der Sache ist ja, ich weiß wie ich die Form so darstelle wie ich will, aber diese lässt sich selbst nicht vergrößern. Das was du mir da Vorschlägst ist eben genau die Mutation durch Regions, doch diese lässt das Resize-Problem auftreten. Alle anderen Methoden die ich mittlerweile kenne, laufen nur unter Win2K und höher. Fragt sich also, wie sowas dennoch möglich ist, denn das es das ist steht durch Beispiele wie WinAmp und WMP außer Frage. Zitat:
Gruß, Max Edit: Mir drängt sich eine Frage auf: Würde alles unter Win2k eine Form akzeptieren deren Brush einfach bsClear in der Style-Eigenschaft hat?(Ich Idiot, dabei wird die Form nur durchsichtig jedoch ist sie doch nicht da und die klickst werden von ihr abgefangen, vergesst das einfach ;)) |
Re: Die Form der Form...
Zitat:
![]() |
Re: Die Form der Form...
Moin!
Ebenfalls danke für deine Antwort. Naja, man merkt halt, dass da mehr passiert als bei einem normalen Resize. Aber wie es aussieht(Ich suche bereits seit einer Ewigkeit in allen möglichen Ecken des Internets nach einer Lösung) werde ich es wohl auch so lösen müssen. Sollte dennoch jemand eine Idee haben, immer her damit.. Bitte.. ;) Gruß, Max Btw, der Erde-Skin von deinem Player ist ja cool :shock: , sprich seine Eigenschaft das sich die Erde 'mitdreht'. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz