Transparente Form

Re: Transparente Form

Beitragvon pluto » 30. Okt 2009, 15:27 Re: Transparente Form

Das wird nicht so leicht werden. Der gesammte Code dürft nur unter GTK2 laufen.... Du müsstest ihn komplett neu schreiben.
MFG
Michael Springwald
Aktuelles Projekt: PlutoArduino
pluto
Lazarusforum e. V.
 
Beiträge: 7003
Registriert: 19. Nov 2006, 12:06
Wohnort: Oldenburg/Oldenburg
OS, Lazarus, FPC: Linux Mint 18.3 | 
CPU-Target: AMD
Nach oben

Beitragvon _X_ » 30. Okt 2009, 15:33 Re: Transparente Form

Kuster Peter hat geschrieben:Ist ja toll, läuft leider mit Windows nicht. Was muss ich anpassen?
Eigentlich eine blöde Frage, ich habe das nicht umsonst in "API & Plattformspezifisches ‹ Linux" geschrieben, oder ? ;-)
Ich werde das ganze auch für Windoof implementieren, das kann aber noch ein Weilchen dauern, weil ich mein Windoof mal wieder updaten muss.
Das dauert schon mal nen ganzen Tag.

mfg _X_
„If you've any great suggestions, feel free to pm me, and I'll probably feel free to ignore you“
_X_
_X_
 
Beiträge: 251
Registriert: 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0 | 
CPU-Target: 32/64Bit
Nach oben

Beitragvon pluto » 30. Okt 2009, 16:48 Re: Transparente Form

Eigentlich eine blöde Frage,

Es gibt keine Blöde Fragen.... mir ist es z.b. auch nicht aufgefallen, wo du dein Beitrag erstellst hast...
MFG
Michael Springwald
Aktuelles Projekt: PlutoArduino
pluto
Lazarusforum e. V.
 
Beiträge: 7003
Registriert: 19. Nov 2006, 12:06
Wohnort: Oldenburg/Oldenburg
OS, Lazarus, FPC: Linux Mint 18.3 | 
CPU-Target: AMD
Nach oben

Beitragvon _X_ » 30. Okt 2009, 17:26 Re: Transparente Form

pluto hat geschrieben:
Eigentlich eine blöde Frage,

Es gibt keine Blöde Fragen.... mir ist es z.b. auch nicht aufgefallen, wo du dein Beitrag erstellst hast...
Da hast du auch wieder Recht.

mfg _X_
„If you've any great suggestions, feel free to pm me, and I'll probably feel free to ignore you“
_X_
_X_
 
Beiträge: 251
Registriert: 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0 | 
CPU-Target: 32/64Bit
Nach oben

Beitragvon Targion » 30. Okt 2009, 22:45 Re: Transparente Form

Ich glaube, bei Windoof kann ich aushelfen. Ich habe mal ein Programm namens SimpleGlass geschrieben, welches jedes beliebige Windows in Windoof transparent machen kann. Das Projekt wird bald OSS!
Das ist allerdings Delphi-Code und ich habe grade kein Windows hier, um ihn zu testen. Also, probier's aus!
Code: Alles auswählen
procedure MakeTransparent(AHandle: THandle; AValue: byte = 0);
var
  Info: TOSVersionInfo;
  SetLayeredWindowAttributes: TSetLayeredWindowAttributes;
  var i: Integer;BValue:Byte;
begin
Info.dwOSVersionInfoSize := SizeOf(Info);
  GetVersionEx(Info);
  if (Info.dwPlatformId = VER_PLATFORM_WIN32_NT) and
    (Info.dwMajorVersion >= 5) then
  begin
    SetLayeredWindowAttributes := GetProcAddress(GetModulehandle(user32),'SetLayeredWindowAttributes');
    if Assigned(SetLayeredWindowAttributes) then
    begin
      SetWindowLong(AHandle, GWL_EXSTYLE, GetWindowLong(AHandle, GWL_EXSTYLE) or WS_EX_LAYERED);
      SetLayeredWindowAttributes(AHandle, 0, AValue, LWA_ALPHA);
    end;
  end;
  end;
end;
Targion
 
Beiträge: 688
Registriert: 3. Okt 2007, 20:00
OS, Lazarus, FPC: Linux (L 0.9.29 FPC 2.4.2) | 
CPU-Target: x86_64
Nach oben

Beitragvon _X_ » 30. Okt 2009, 22:48 Re: Transparente Form

Targion hat geschrieben:Das ist allerdings Delphi-Code und ich habe grade kein Windows hier, um ihn zu testen.
Dito. Dann hau ich mir morgen Windoof auf die Platte, und probiers aus.
Auf Mac OS sollte mein Code eigentlich laufen.
Dann sollte es das ganze auch bald ins svn schaffen.

mfg _X_
„If you've any great suggestions, feel free to pm me, and I'll probably feel free to ignore you“
_X_
_X_
 
Beiträge: 251
Registriert: 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0 | 
CPU-Target: 32/64Bit
Nach oben

Beitragvon pluto » 30. Okt 2009, 22:51 Re: Transparente Form

Auf Mac OS sollte mein Code eigentlich laufen.

Nein ! Nur wenn der Anwendung auch dort GTk2 Installiert hat, für "Mac OS" ist ein anders Toolkit vorgesehen.

@Targion
Prima, dann könnten wir ja daraus eine Art Klasse / Interface erstellen, die es Automatisch die Richtige Funktion / Methode aufruft je nach Plattform, vielleicht wird das sogar in Lazarus aufgenommen als Standard Funktion.... Oder noch besser: Ein neues From mit dieser Eigenschaft, dürfte eigentlich kein Problem sein.... nur für den Desinger...
MFG
Michael Springwald
Aktuelles Projekt: PlutoArduino
pluto
Lazarusforum e. V.
 
Beiträge: 7003
Registriert: 19. Nov 2006, 12:06
Wohnort: Oldenburg/Oldenburg
OS, Lazarus, FPC: Linux Mint 18.3 | 
CPU-Target: AMD
Nach oben

Beitragvon Teekeks » 31. Okt 2009, 06:53 Re: Transparente Form

Hi!
Leider funktioniert das immer noch nicht mit KDE3 :(
Ich werde mich mal weiterhin belesen, mal gucken ob ich was raus finde...

Gruß Teekeks
Teekeks
 
Beiträge: 359
Registriert: 27. Mai 2009, 19:54
Wohnort: Cottbus
OS, Lazarus, FPC: OpenSuse11.4 x86 (Lazarus: 0.9.30 FPC 2.4.2) | 
CPU-Target: x86
Nach oben

Beitragvon _X_ » 31. Okt 2009, 10:08 Re: Transparente Form

So weit ich weiß, geht das unter KDE3 nur mit einem alternativen Fenstermanager, also z.B. Compiz-Fusion.
Und ich hab mir auch gleich mal die Mühe gemacht, das zu testen, Ergebnis: mit Compiz-Fusion + KDE3 funktioniert das.

mfg _X_
„If you've any great suggestions, feel free to pm me, and I'll probably feel free to ignore you“
_X_
_X_
 
Beiträge: 251
Registriert: 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0 | 
CPU-Target: 32/64Bit
Nach oben

Beitragvon theo » 31. Okt 2009, 10:24 Re: Transparente Form

Wer will das eigentlich haben?
Das verwenden doch die Fenstermangager z.T beim Verschieben etc.
Da würde ich nicht reinfummeln.
theo
 
Beiträge: 8167
Registriert: 11. Sep 2006, 18:01

Beitragvon _X_ » 31. Okt 2009, 10:28 Re: Transparente Form

theo hat geschrieben:Wer will das eigentlich haben?
Ich.
theo hat geschrieben:Das verwenden doch die Fenstermangager z.T beim Verschieben etc.
Da würde ich nicht reinfummeln.
Ich kenne genug Programme, die machen das auch; Also warum sollte ich es nicht machen?

mfg _X_
„If you've any great suggestions, feel free to pm me, and I'll probably feel free to ignore you“
_X_
_X_
 
Beiträge: 251
Registriert: 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0 | 
CPU-Target: 32/64Bit
Nach oben

Beitragvon theo » 31. Okt 2009, 10:37 Re: Transparente Form

_X_ hat geschrieben:Ich kenne genug Programme, die machen das auch; Also warum sollte ich es nicht machen?

Und welchen Zweck erfüllt das? (Ausser zu beweisen, dass man total gut programmieren, und lustige semi-transparente Fenster basteln kann).
Für mich ist das - wie Farb- und Fontspiele - abzulehnen. D.h. gehört in die Systemkonfiguration, nicht in die Anwendung.
theo
 
Beiträge: 8167
Registriert: 11. Sep 2006, 18:01

Beitragvon _X_ » 31. Okt 2009, 10:53 Re: Transparente Form

Ich habe das eigentlich nur gemacht, weils die VCL kann.

mfg _X_
„If you've any great suggestions, feel free to pm me, and I'll probably feel free to ignore you“
_X_
_X_
 
Beiträge: 251
Registriert: 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0 | 
CPU-Target: 32/64Bit
Nach oben

Beitragvon pluto » 31. Okt 2009, 13:10 Re: Transparente Form

So weit ich weiß, geht das unter KDE3 nur mit einem alternativen Fenstermanager, also z.B. Compiz-Fusion.

Also bei mir geht das unter KDE3.5 allerdings mit deiner Funktion leider auch nicht. Ich verwende den Standard Window-Manger

Und welchen Zweck erfüllt das? (Ausser zu beweisen, dass man total gut programmieren, und lustige semi-transparente Fenster basteln kann).
Für mich ist das - wie Farb- und Fontspiele - abzulehnen. D.h. gehört in die Systemkonfiguration, nicht in die Anwendung.

Ja, da hast du irgendwie nicht ganz unrecht, aber in vielen Programmen kann man das einstellen. Und ich möchte nicht überall Transparent haben. Im Moment habe ich das bei mir so das es eigentlich stört und man kann einen Text nur sehr schwer lesen wenn diese Funktion eingeschaltet ist, aber zum Glück kann ich mit alt + ScrollRad das einstellen. Auch mit "KDE3.5", aber wie gesagt ohne Lazarus, leider.
Letztendlich ist das nur eine Spielerei mehr nicht. Eine machbarkeit. und wie _X_ schon sagte: damit wird Lazarus noch Kompatibler zu Delphi *G* das ist doch ein Argument was wir häufig hören *G*.
Allerdings gefällt mir die Funktion nicht 100%ig, mir fehlen gewisse Einstellungens Möglichkeiten. Z.B. meine ich das der Inhalt vom Aktiven Fenster auch stark beeinflusst wird, oder das es abschaltbar ist, dass auch die Fenster die unter einem anderen Fenster liegen durchschimmern. Schöner währe das wenn man das einstellen könnte.
Kann man das bei Compiz ?
MFG
Michael Springwald
Aktuelles Projekt: PlutoArduino
pluto
Lazarusforum e. V.
 
Beiträge: 7003
Registriert: 19. Nov 2006, 12:06
Wohnort: Oldenburg/Oldenburg
OS, Lazarus, FPC: Linux Mint 18.3 | 
CPU-Target: AMD
Nach oben

Beitragvon Kuster Peter » 31. Okt 2009, 20:18 Re: Transparente Form

Ich habe Windows und der Compiler reklamiert schon bei folender Zeile:

Info: TOSVersionInfo;

Ich habe da so eine verrückte Idee: Ein Programm von dem man nur die Lables, die Datenbankfelder und die Buttons sieht, der rest ist transparent.

Peter
Kuster Peter
 
Beiträge: 210
Registriert: 2. Dez 2007, 20:47
Wohnort: Schweiz
OS, Lazarus, FPC: Windows XP Lazarus immer neueste Version | 
CPU-Target: xxBit
Nach oben

» Weitere Beiträge siehe nächste Seite »
VorherigeNächste

Zurück zu Linux



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste

cron
porpoises-institution
accuracy-worried