AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Natives Layout unter Firemonkey

Ein Thema von Peter666 · begonnen am 6. Jan 2023 · letzter Beitrag vom 6. Jan 2023
Antwort Antwort
Peter666

Registriert seit: 11. Aug 2007
357 Beiträge
 
#1

Natives Layout unter Firemonkey

  Alt 6. Jan 2023, 16:32
Hallo,

ich würde gerne transparente Grafiken über native Elemente wie den Webbrowser packen. Das geht leider nicht wirklich. Es gibt zwar den ControlType = Platform, aber wenn ich das mit einem Panel mache, dann ist das nicht transparent.
Also dachte ich mir probierst du es mit dem Presentation Model System von Firemonkey. Anbei der komplette Code. Ich frage mich, wieso das nicht geht. Hat jemand eventuell eine Idee? Die Basis für den Code war dieser hier: https://github.com/tothpaul/Firemonk...master/GLPanel

Peter
Angehängte Dateien
Dateityp: zip NativeLayout.zip (3,6 KB, 4x aufgerufen)
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.824 Beiträge
 
Delphi 12 Athens
 
#2

AW: Natives Layout unter Firemonkey

  Alt 6. Jan 2023, 17:56
Bedenke: nicht alle FMX Controls haben eine native Repräsentation. Das sind bisher nur ein paar wenige.
  Mit Zitat antworten Zitat
Peter666

Registriert seit: 11. Aug 2007
357 Beiträge
 
#3

AW: Natives Layout unter Firemonkey

  Alt 6. Jan 2023, 19:35
Oh ja, das weiß ich - deswegen wollte ich ein Natives Element (was quasi ein transparentes Fenster ist) erstellen.
Das ist hier beschrieben:
http://yaroslavbrovin.ru/new-approac...ion-part-1-en/

Im Prinzip habe ich eine Klasse die auf TWinPresentation aufbaut und unter Windows von meinem TPresentedControl verwendet wird. Das machen quasi alle Platform Elemente. Jetzt setze ich das verwendete Handle auf transparent, aber es funktioniert nicht wie gedacht. Im Prinzip kann man auch "bescheissen" und ein Rahmenloses transparentes Form benutzen und dieses via Winapi.Windows.SetParent(WindowHandleToPlatform(FV iew.Handle).Wnd,
WindowHandleToPlatform(LForm.Handle).Wnd); auf das Hauptformular pappen. Das ist nur ziemlicher Murx, flackert böse und eine saubere Variante wäre halt prima. Ein einfaches Usecase ist, wenn man ein Video abspielt und ein OSD darüber rendern will. Das geht auch mit nem transparenten Formular, ist halt nur unsauber und lahm.

Peter
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz