Seite 1 von 1

Fonttext ausgeben der von anderen Progs nicht überdeckt wird

Verfasst: 25.03.2014 17:32
von 3dhubiflieger
Hallo, hab da nen Problem was ich noch nicht lösen konnte. Ich will, wenn ein Programm gestartet wird einen Text per Font auf dem Bildschirm ausgeben. Problem ist das dieser (siehe unten) mit Programmen, welche einen richtigen Screen initialisieren (kein Window) nicht funktioniert. Auch wenn ich Stickywindow nehme, wird mein Text nicht richtig angezeigt bzw das Programm "verschluckt" ihn beim initialisieren des Screens. Gibts ne Alternative ?

Code: Alles auswählen

Procedure Text(Text$,Dauer)
  
  
 StopDrawing()
 
 ExamineDesktops()
 Breite = DesktopWidth(0)
 Hoehe  = DesktopHeight(0)
 Schriftgroesse = 31
 LoadFont(0, "Broadway",Schriftgroesse) ;Schriftart

 Repeat 
   
  Versuche = Versuche + 1
   
  Hinweisfenster = OpenWindow(#PB_Any, 0, 0, Breite, Hoehe, "",  #PB_Window_BorderLess)
 
  If Hinweisfenster
    
     If CreateImage(0, Breite, Hoehe) And StartDrawing(ImageOutput(0))
      
       StickyWindow(Hinweisfenster,1)
 
       DrawingFont(FontID(0))   ;Font auswählen
       FrontColor(RGB(0,0,250)) ;Textfarbe setzen
       XZentriert = ((Breite - TextWidth(Text$)) / 2) 
       YZentriert = ((Hoehe  - TextHeight(Text$)) / 2)
       DrawText(XZentriert,YZentriert, Text$)
      
       StopDrawing() 
       ImageGadget(0, 0, 0, 200, 200, ImageID(0))
       
     EndIf
    
     Delay(Dauer)
     If IsGadget(0)
       FreeGadget(0)
     EndIf  
     CloseWindow(Hinweisfenster)
     ProcedureReturn
   EndIf
   
  Until Versuche > 10 
 
EndProcedure