![]() |
TWebbrowser mit Border-Style wie ein TEdit
Liste der Anhänge anzeigen (Anzahl: 1)
Moin!
Ich habe einen TWebbrowser (im EditMode) und möchte dessen Rahmen gern so aussehen lassen wie den eines TEdit. Unter den Alten Delphis und bis Windows XP (ohne Theming) war das ja ohnehin gegeben, beide Controls hatten den tiefen Rand. Bei XE4 und unter Win 7 sieht das dann anders aus: Ein TEdit hat einen Rahmen mit abgerundeten Ecken, der blau wird wenns den Fokus hat. Der TWebbrowser dagegen hat nun gar keinen Rahmen mehr (siehe Bildschirmfoto). Er soll aber idealerweise genauso aussehen wie ein TEdit oder ein TMemo, auch mit abgerundeten Ecken und Fokus-sensitiver Rahmenfarbe. Ich vermute, man müsste das mit CreateParams machen können, mir fehlt nur grad der richtige Einstieg. Grüße Cody |
AW: TWebbrowser mit Border-Style wie ein TEdit
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Zitat:
Zitat:
Mein Gesicht im Anhang. PS: Ich habe gerade einmal
Delphi-Quellcode:
versucht. Komischerweise verliert die Memo dann auch plötzlich ihren schönen blauen Rahmen. Gemein.
(WebBrowser1 as TWinControl).Parent := Memo1;
|
AW: TWebbrowser mit Border-Style wie ein TEdit
Oi, das kommt davon wenn man nen Bagger vorm Bürofenster hat und seine eigenen Gedanken nicht mehr hören kann ;-)
EDIT: Ich war jetzt mal frech und hab bei der CreateParams-Routine vom TCustomEdit abgeschrieben:
Delphi-Quellcode:
Mal ganz davon abgesehen, dass wir da in der VCL auch noch das with-Statement sehen *gg*, es funktioniert nicht. Die CreateParams-Routine wird schlichtweg nicht aufgerufen. :-(
procedure TMyWebbrowser.CreateParams(var Params: TCreateParams);
const BorderStyles: array[TBorderStyle] of DWORD = (0, WS_BORDER); begin inherited CreateParams(Params); CreateSubClass(Params, 'EDIT'); with Params do begin Style := Style or (ES_AUTOHSCROLL or ES_AUTOVSCROLL) or BorderStyles[FBorderStyle]; if NewStyleControls and Ctl3D and (FBorderStyle = bsSingle) then begin Style := Style and not WS_BORDER; ExStyle := ExStyle or WS_EX_CLIENTEDGE; end; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:39 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 by Thomas Breitkreuz