| Autor |
Beitrag |
forcedbydelphi
      
Beiträge: 16
|
Verfasst: Mo 10.01.11 16:36
Hi Deplhianer,
ich hab es hingekriegt, dass die Form unsichtbar ist
Alphablended
Alphablendedvalue
mein Problem:
der inhalt also buttons und so sollten aber noch sichtbar bleiben, geht sowas? oder muss ich es ganz lassen^^
Danke
Moderiert von Narses: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Mo 10.01.2011 um 17:12
Moderiert von Narses: Titel geändert, "DRINGEND" entfernt.
|
|
Tony-S
      
Beiträge: 184
Erhaltene Danke: 6
Windows 7, XP, Ubtuntu
Delphi 7, Visual Basic.net
|
Verfasst: Mo 10.01.11 17:40
Ich versteh das Problem nicht ganz, die Form soll durchsichtig sein und die Buttons nicht, ja?
Dann setzt du TransparentColor auf irgendeine Farbe und änderst die Farbe der Form auf die gleiche Farbe wie bei TransparentColor.
und das sieht dann so aus:
Moderiert von Narses: Bild als Anhang hochgeladen.
Einloggen, um Attachments anzusehen!
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 10.01.11 17:47
Und was ist daran jetzt dringend?
|
|
forcedbydelphi 
      
Beiträge: 16
|
Verfasst: Mo 10.01.11 17:54
ich musste es abschicken und ist eh zu spät naja, anstatt so zu fragen konnte man ja etwas Hilfreiches Posten
|
|
bummi
      
Beiträge: 1248
Erhaltene Danke: 187
XP - Server 2008R2
D2 - Delphi XE
|
Verfasst: Mo 10.01.11 17:59
Der Titel ist unglücklich gewählt...
Mit Alpha hast Du keine Chance, gegf. kannst Du das was Du erreichen möchtest mit TransparentColor und TransparentColorValue erreichen. Wenn Du Alpha brauchst kannst Du nur mit einem 2. Form und zuvor genannten Eigenschaften und anpassen im Move/Size/Focus etc. etwas derartiges "hinfaken".
_________________ Das Problem liegt üblicherweise zwischen den Ohren H₂♂
DRY DRY KISS
|
|
jaenicke
      
Beiträge: 19346
Erhaltene Danke: 1754
W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mo 10.01.11 18:01
forcedbydelphi hat folgendes geschrieben : | | ich musste es abschicken und ist eh zu spät |
Früher fragen, wenn du nicht weiterkommst...?
Das Stichwort ist jedenfalls SetWindowRgn.
// EDIT:
Stimmt, TransparentColor kann auch reichen, sofern man eine nimmt, die nirgends auf dem sichtbaren Bereich vorkommt.
|
|
Gerd Kayser
      
Beiträge: 632
Erhaltene Danke: 121
Win 7 32-bit
Delphi 2006/XE
|
Verfasst: Mo 10.01.11 19:25
forcedbydelphi hat folgendes geschrieben : | | der inhalt also buttons und so sollten aber noch sichtbar bleiben, geht sowas? |
So würde ich es machen (Beispiel):
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52:
| procedure TMainform.BtnCloseClick(Sender: TObject); begin Close; end;
procedure TMainform.FormCreate(Sender: TObject); var Punkt1 : TPoint; Punkt2 : TPoint; Region : HRgn; RegionTemp : HRgn; begin ReportMemoryLeaksOnShutdown;
Edit1.Color := clLime; Memo1.Color := clLime;
Region := CreateRectRgn(0, 0, 0, 0);
Punkt1.X := BtnClose.Left; Punkt1.Y := BtnClose.Top; Punkt2.X := BtnClose.Left + BtnClose.Width; Punkt2.Y := BtnClose.Top + BtnClose.Height; Punkt1 := ClientToScreen(Punkt1); Punkt2 := ClientToScreen(Punkt2); RegionTemp := CreateRectRgn(Punkt1.X, Punkt1.Y, Punkt2.X, Punkt2.Y); CombineRgn(Region, Region, RegionTemp, Rgn_OR);
Punkt1.X := Edit1.Left; Punkt1.Y := Edit1.Top; Punkt2.X := Edit1.Left + Edit1.Width; Punkt2.Y := Edit1.Top + Edit1.Height; Punkt1 := ClientToScreen(Punkt1); Punkt2 := ClientToScreen(Punkt2); RegionTemp := CreateRectRgn(Punkt1.X, Punkt1.Y, Punkt2.X, Punkt2.Y); CombineRgn(Region, Region, RegionTemp, Rgn_OR);
Punkt1.X := Memo1.Left; Punkt1.Y := Memo1.Top; Punkt2.X := Memo1.Left + Memo1.Width; Punkt2.Y := Memo1.Top + Memo1.Height; Punkt1 := ClientToScreen(Punkt1); Punkt2 := ClientToScreen(Punkt2); RegionTemp := CreateRectRgn(Punkt1.X, Punkt1.Y, Punkt2.X, Punkt2.Y); CombineRgn(Region, Region, RegionTemp, Rgn_OR);
SetWindowRgn(Mainform.Handle, Region, true); end; |
|
|
|