control überdeckt



  • das ding ist, dass die controls in einem anderen panel sind als die texte. jedes panel hat natürlich seinen eigenen sizer.

    Raise() und Lower() ändern leider auch nichts.



  • Wieso um alles in der Welt stellst du die Controls denn in verschiedene Panels?
    Gibt es dafür einen zwingenden oder wenigstens guten Grund?



  • die inhalte sollen halt nur als liste angezeigt werden, bis man sie auch bearbeiten möchte. ich dachte, es ist das einfachste, die liste einfach so stehen zu lassen und die controls "einfach" darüber zu legen. den text mit den controls zu tauschen kommt mir komplizierter vor, wäre aber natürlich auch eine option. würdest du das eher empfehlen?



  • mael15 schrieb:

    die inhalte sollen halt nur als liste angezeigt werden, bis man sie auch bearbeiten möchte. ich dachte, es ist das einfachste, die liste einfach so stehen zu lassen und die controls "einfach" darüber zu legen. den text mit den controls zu tauschen kommt mir komplizierter vor, wäre aber natürlich auch eine option. würdest du das eher empfehlen?

    Moment mal, da ist irgendwo eine Liste (die man auf dem Screenie nicht sieht) und du bearbeitest einen Eintrag indem du Controls drüberlegst 😮

    Entweder du bearbeitest die Einträge direkt in der Liste, oder, wenn die Eingabe etwas komplizierter ist/validiert werden muss etc. erstellst du dazu einen Dialog. Dann kommen deine Controls mitsamt Panel dorthin, das macht dann schon eher was her 😉



  • mit liste meine ich kein wxGrid, sondern im hintergrund "X" und "0" sind wxStaticText Einträge in einem wxBoxSizer. anfangs hatte ich ein wxGrid, das hat aber an mehreren stellen gehakt und war einfach nicht ideal zum laufen zu bringen.

    ich möchte eigentlich kein extra dialog in einem getrennten fenster verwenden, damit es für den benutzer die möglichkeit zum ändern eines wertes direkt an der stelle gibt, an der der wert auch steht. das ist für die benutzerfreundlichkeit ideal.

    wenn ihr meint, es geht einfach nicht, dass ein wxSpinCtrl genauso über dem wxStaticText liegen kann wie man das im screenshot bei der wxComboBox links und den buttons rechts mit "Y" und "N" sieht, dann würde ich versuchen, den wxStaticText durch das jeweilige control auszutauschen.



  • trivialerweise habe ich das problem gelöst, indem ich alles, was überdeckt werden soll, mittels Show(false) ausblende. 🤡
    manchmal hab ich einfach ein brett vor dem kopf....

    danke für eure ideen!



  • Eventuell mal mit Sizern arbeiten in Zukunft...
    Damit lösen sich Positionierungsprobleme von selber.
    rya.



  • ööööö, die positionierung war gar nicht das problem und alle elemente sind in sizern....



  • Lass dir bitte von mir noch ans Herz legen, die Controls wenigstens einigermaßen NICHT zweck- zu entfremnden. Sollte irgendwer mal deinen Code lesen, wird er wahrscheinlich nichts damit anfangen können. Außerdem halte ich es nicht für sonderlich Ressourcensparend, alles nur zu verstecken, anstatt es zu löschen...



  • ok, danke!
    eventuell habe ich mich auch falsch ausgedrückt. das problem ist auf jeden fall gelöst.


Anmelden zum Antworten