Redraw Fenster-> problem

  • Hallo...

    ich habe 2 Probleme.

    Zuerst einmal zum ersten Programm. Hier habe ich das Problem, dass der Hintergrund meines Listviewitems schwarz wird, sobald sich ein Fenster davor befindet (also der Bereich vom drüberliegenden Fenster ist schwarz). Das gleiche Problem habe ich auch, wenn das Fenster außerhalb des Bildschirm sichs befindet. habe schon viele _WinApi_RedrawWindow eingebaut, allerdings wird dies nicht ausgeführt wenn sich ein anderes Fenster vor meinem Programm sich befindet.

    Das zweite Problem ist nochmal ein weniger komplizierter.
    Hier hab ich das Problem, dass teile meines Hintergrundbildes unsichtbar sind. Allerdings färben sich diese komisch sobald sich auch dieses Fenster außerhalb des Bildschirms sich befindet, bzw. ein Programm über mein Programm war. Dann werden die Ecken (also die "unsichtbaren" Teile meines Hintergrundbildes) schwarz oder weiß (sieht immer anders aus^^).

    Wie kann ich nun mein Fenster komplett neu zeichnen?

    Programmcode kann ich leider nicht posten, da es über 2000 Zeilen sind auf verschiedene Dateien verteilt.

    Ich kann allerdings einzelne Codeteile bei bedarf noch hinzufügen!

    Hoffe jemand hat meine Probleme verstanden und kann mir helfen!

    Danke und Gruß
    4Soldier93

    Einmal editiert, zuletzt von 4Soldier93 (2. September 2011 um 16:45)

  • Programmcode kann ich leider nicht posten, da es über 2000 Zeilen sind auf verschiedene Dateien verteilt.

    Ich kann allerdings einzelne Codeteile bei bedarf noch hinzufügen!

    Dann bastel einmal ein Demoskript bei dem der Fehler auch auftritt,

    mfg autoBert

  • So,

    Miniscript ist angehängt.

    Hier erkennt man schön wie sich das Listview schwarz färbt, obwohl ich weiß ausgewählt habe. Erzeuge ich Das Listview später neu, dann wird es weiß (Siehe Script).

    Das Gif ersetzt so wie es aussieht nur die fehlenden Stellen mit dem Hintergrund, anstatt unsichtbar zu bleiben!

    Kann mir hier jemand helfen??

    Danke und Gruß
    Andy

  • Habe ein Problem halbe lösen können.

    In der deutschen Hilfedatei (in der englischen mal wieder nicht) steht, dass beim letzten eingefügten Bild der erste Pixel in der Ecke als Transparenzfarbe genutzt wird.

    Gut... Leider habe ich mehrere Bilder in meiner gui. Und das Hintergrundbild ist ja standardmäßig das allererste Bild das man einfügt. Weiß jemand wie ich das Problem lösen kann, ohne dass ich bei jedem Bild den ersten Pixel anmalen muss :) ??

    Und evtl kann noch jemand das Problem mit der Listview lösen?!?

    Danke und Gruß
    4Soldier93

  • HalLo Soldier,

    ich kann in deinem Skript.

    Spoiler anzeigen
    [autoit]

    $Form1 = GUICreate("Test", 1234, 537, 208, 124)
    $Name = GUICtrlCreateInput("Name", 72, 8, 801, 21)
    $Path = GUICtrlCreateInput("Pfad", 72, 58, 801, 21)
    $Priority = GUICtrlCreateInput("Priorität", 72, 108, 801, 21)
    $Directory = GUICtrlCreateButton("&Pfad", 880, 58, 65, 25)
    $Add = GUICtrlCreateButton("&Speichern!", 880, 158, 65, 25)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case -3
    Exit
    Case $Add
    $anzahl = 1
    ;Do
    ;If IniRead("X.ini", "Item", $anzahl, "") = "" Then
    $z = GUICtrlRead($Name)
    $b = GUICtrlRead($Path)
    $c = GUICtrlRead($Priority)
    $IniName = @ScriptDir & "\X.INI"
    IniWrite($IniName, "Item", $anzahl, $z)
    IniWrite($IniName, "Item", $anzahl & "b", $b)
    IniWrite($IniName, "Item", $anzahl & "c", $c)
    MsgBox(64, "", "Profil erfolgreich erstellt")
    Exit
    ; EndIf
    ; $anzahl = $anzahl + 1
    ;Until $anzahl = 15
    Case $Directory
    $pfad = FileOpenDialog("Programm auswählen", @ProgramFilesDir, "Anwendungen (*.exe)")
    GUICtrlSetData($Path, $pfad)
    EndSwitch
    WEnd;
    [

    [/autoit]

    KEINE Listview erkennen,

    mfg autoBert

    Einmal editiert, zuletzt von autoBert (2. September 2011 um 04:52)

  • Okay...


    Keine Ahnung was das für ein Script ist.
    Aber nachdem ich als letztes Bild ein 1x1 oixel großes Bild mit der Farbe des Hintergrundes hinzugefügt habe, wird das Bild teilweise unsichtbar. Und schon ist auch das ListView-Problem weg. Hmhm... seltsam aber hauptsache es tut xD

    Danke schön für deine Hilfe!

    Ich setze den Status auf "gelöst"