Textgadget durchsichtig

Fragen und Bugreports zur PureBasic 4.0-Beta.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Textgadget durchsichtig

Beitrag von RSBasic »

Hi ihr, ich habe mal eine Frage zu Textgadget.
Ich möchte mein Textgadget durchsichtig machen, aber dazu brauche ich entweder eine WinAPI oder einen Beispielcode. Habt ihr für mich eine Lösung?
Ich wünsche euch ein schönes Wochenende :D
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

Hat jemand hier keine Lösung für mich?
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Kekskiller
Beiträge: 752
Registriert: 14.09.2004 21:39
Kontaktdaten:

Beitrag von Kekskiller »

Code: Alles auswählen

HideGadget(#Gadget, Status)
Edit: wooops... hab "unsichtbar" gelesen...
Zuletzt geändert von Kekskiller am 27.10.2006 23:27, insgesamt 1-mal geändert.
Benutzeravatar
#NULL
Beiträge: 2237
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

bis hier ein API-jemand auftaucht:
du kannst ein HyperLinkGadget verwenden.
<edit: hab mich geirrt, das bringt dir auch keine transparenz, sorry>
my pb stuff..
Bild..jedenfalls war das mal so.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

hier gabs doch in letzter zeit des öfteren den API-call für transparenz,
wurde für taskleiste angewendet und glaubich auch fürn fenster.
ein Gadget ist doch auch ein Fenster-Objekt.
könnte doch auch damit funktionieren....?
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
#NULL
Beiträge: 2237
Registriert: 20.04.2006 09:50

Beitrag von #NULL »

ja, das hab ich mal probiert, is aber nix geworden, weil ich die entsprechenden API-funktionen nicht blicke

Code: Alles auswählen

CreateImage(0, 100,100)
StartDrawing( ImageOutput(0) )
  Circle(50,50,10,$00ff00)
StopDrawing()

hWin=OpenWindow(0, 50,150,400,400, "")
CreateGadgetList(hWin)
  ImageGadget(0, 0,0,  200,100, ImageID(0) , #PB_Image_Border)
  ;HyperLinkGadget(1, 50,20, 200,20, "hach wie lustig, ich bin (noch) nicht durchsichtig", $0)
  TextGadget(1, 50,20, 300,20, "hach wie lustig, ich bin (noch) nicht durchsichtig", $0)
  SetGadgetColor(1, #PB_Gadget_FrontColor, $009900)
  ;SetGadgetColor(1, #PB_Gadget_BackColor, 256)

  hwnd=GadgetID(1)
  lucid=100
  SetWindowLong_(hwnd,#GWL_EXSTYLE,GetWindowLong_(hwnd,#GWL_EXSTYLE)|#WS_EX_LAYERED)
  SetLayeredWindowAttributes_(hwnd,0,lucid,2)

Repeat
  StartDrawing( WindowOutput(0) )
    DrawingMode(#PB_2DDrawing_Transparent)
    DrawText(50,60, "aber ich, nur will mich keiner haben", $ffffff)
  StopDrawing()
  event=WindowEvent()
  Select event
    Case #PB_Event_CloseWindow
      quit=1
  EndSelect
Until quit
@rsbasic
soll alles transparent sein, oder nur der schrift-hintergrund?
my pb stuff..
Bild..jedenfalls war das mal so.
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Beitrag von Falko »

Hab zwar kein Textgadget genommen um es transparent darzustellen,
aber vielleicht kannst du mit diesem Beispiel was anfangen.
Ein Windows was transparent wird und ebenso ein Text, der auf das
Windows gezeichnet wird.

http://www.purebasic.fr/german/viewtopi ... 627#120627

Gruß ...Falko
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@#NULL
Zu deiner Frage: Nur den Textgadget
Zu dein Beispielcode: THX, mal schauen :allright:

@Falko
Zu dir auch: THX :allright:

Aber irgendwie muss eine Api geben oder? :|
Windows Texte sind auch transparent.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Andreas
ToolbarKönig
Beiträge: 142
Registriert: 08.09.2004 08:33

Beitrag von Andreas »

Code: Alles auswählen

Procedure WCB(WindowID, Message, wParam, lParam)
  Result = #PB_ProcessPureBasicEvents
  Select Message
   Case #WM_CTLCOLORSTATIC
      Select lparam
      Case GadgetID(1)
         SetBkMode_(wparam,#TRANSPARENT)
         ProcedureReturn GetStockObject_(#HOLLOW_BRUSH)
      EndSelect
  EndSelect
  ProcedureReturn Result
EndProcedure



CreateImage(0, 100,100) 
StartDrawing( ImageOutput(0) ) 
  Circle(0,0,110,$00ff00) 
StopDrawing() 

hWin=OpenWindow(0, 50,150,400,400, "") 
  CreateGadgetList(hWin) 
  ImageGadget(0, 0,0,  200,100, ImageID(0) , #PB_Image_Border) 
  TextGadget(1, 10,20, 300,20, "hach wie lustig, ich bin ja doch durchsichtig", $0) 
  TextGadget(2, 10,40, 300,20, "hach wie lustig, ich bin nicht durchsichtig", $0) 
  SetGadgetColor(1, #PB_Gadget_FrontColor, $009900) 
  SetGadgetColor(2, #PB_Gadget_FrontColor, $009900) 
  SetWindowCallback(@WCB(),0)  
  
Repeat 
  event=WindowEvent() 
  Select event 
    Case #PB_Event_CloseWindow 
      quit=1 
  EndSelect 
Until quit
Gruss Andreas
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@Andreas
Vielen Dank :allright:
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Gesperrt