German fglabel, wie mehrere Label Transparent machen ?

Discussion in 'German Forum' started by Paulsche, Feb 17, 2009.

  1. Paulsche

    Paulsche Well-Known Member Licensed User

    Hi ,

    ich steh aufm Schlauch, oer Blicks grad nicht.

    Im Beispiel steht: fgLab .New1("Label1")

    Anstatt Label1 schreibe ich ja mein eingenes Label rein,
    ok, das funktioniert.

    Ich möchte aber alle Labels einer Form Transparent machen,
    wie mache ich das dann, muss ich für jedes Label ein eigenes Objekt
    erstellen ?
     
  2. Filippo

    Filippo Expert Licensed User

    Hallo Paulsche,

    Ja!

    oder in eine For-Schleife:

    Controls() = GetControls("")
    For i = 0 To ArrayLen(Controls())-1
    Case "Label"
    addobject(Controls(i) & "new",fgControls)
    Control(Controls(i)& "new").new1(Controls(i))
    End Select
    Next

    ACHTUNG! nicht getestet.


    Ciao,
    Filippo
     
  3. Paulsche

    Paulsche Well-Known Member Licensed User

    Hm, danke Filippo,

    ich würde halt gerne für mein Programm ein Hindergrundbild benutzen und müsste dazu alle Labels Transparent machen, da müsste ich also für alle Labels parallel ein Objekt anlegen.
    Werds mal versuchen, ob es evtl. probleme mit der Performens gibt.
     
  4. klaus

    klaus Expert Licensed User

    Hallo Filippo,

    In Deinem Vorschlag fehlt eine Zeile !
    Es müsste doch so aussehen.
    Code:
    Controls() = GetControls("")
    For i = 0 To ArrayLen(Controls())-1
      [COLOR=red]
    Select ControlType(Controls(i))[/COLOR]
      
    Case "Label"
        addobject(
    Controls(i) & "new",fgControls)
        
    Control(Controls(i)& "new").new1(Controls(i))
      
    End Select
    Next
    Beste Grüsse.
     
  5. Paulsche

    Paulsche Well-Known Member Licensed User

    Schade, die Funktion ist Prima, aber wenn ich damit
    meine 20 Labels Transparent mache, sieht man bei jeder Rückkehr
    zu dieser Form, wie die Funktion jedes Label bearbeitet und sich erneut aufbaut.

    Muss ich wohl doch auf ein Hintegrundbild verzichten.

    So eine Funktion in B4PPC wäre auf jedenfall für die nächste Version
    ein sehr brauchbares Feature, vielleicht bekommt Erel das hin,
    dann lässt sich ein Programm halt erst optisch schön aufbereiten,
    z.B. ein Hintegrundbild mit Farbverlauf.
     
  6. klaus

    klaus Expert Licensed User

    Hallo Paulsche,

    Es gibt eine andere Lösung, mit der ImageLibEx direkt auf den Bildschirm zu schreiben. Es ist etwas umständlicher aber es funktioniert.

    Beiliegend ein Beispiel.

    Beste Grüsse.
     

    Attached Files:

    Last edited: Feb 18, 2009
  7. Paulsche

    Paulsche Well-Known Member Licensed User

    Danke Klaus, werd mal mir Drawstring bisschen spielen, ob es nicht zu kompliziert wird, da man hier ja mit Pixelkoordianten arbeitet.
     
  8. Paulsche

    Paulsche Well-Known Member Licensed User

    Hi Klaus,

    ich habe jetzt meine ganzen Labels + Textboxen in meiner form gelöscht und durch
    Variablen ersetzt, die ich mit Drawstring zeichnen lasse,

    und bin begeistert !

    Funktioniert super, und der Bildschirm wird auch sehr viel schneller aufgebaut,
    warscheinlich benötigen die Labels mehr Rechenleistung.

    Danke nochmals für Dein Beispiel.
     
  9. Filippo

    Filippo Expert Licensed User

    schade das es nicht so funktioniert wie ich mir gedacht hatte.:(
    Ich habe jetzt selber mir viele Labels probiert und es ist wirklich so das die Anzeige langsam ist.
     
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice