Bekomme die richtige Darstellung einfach nicht hin

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Bekomme die richtige Darstellung einfach nicht hin

    Hey Leute,
    nachdem ich beim letzten mal quasi mein ganzes Programm neu schreiben musste, hänge ich nun allerdings bei einer Sache fest, die ich einfach nicht mehr verstehe und zwar geht es um die Darstellung meiner .exe also meiner "WindowsApp1" Datei auf anderen Rechnern. Ich habe mir jetzt diverse Threads durchgelesen über Anchor und FormBorderStyle usw aber alles was hier passiert ist, es ändert kleine Teile des Problems, aber das Hauptproblem bleibt bestehen:

    Ich habe ein Programm geschrieben mit einem Bild als Hintergrund.
    BackgroundimageLayout ist dabei = Zoom

    An einer bestimmten Stelle des Bilds ist ein transparentes Label welches auf Buttondruck ein bestimmtes Ergebnis an genau dieser Stelle anzeigen soll.

    Dazu gibt es diverse Comboboxen und Labels etc. die alle an bestimmten Positionen sind.
    Wenn ich selber den Debugger starte oder meine Exe starte, sieht auf meinem Rechner alles super aus. Alles da wo es sein soll.

    Auf jedem anderen Rechner: Scheisse! Comboboxen nicht mehr in der Form zu sehen, Ergebnis wird an einer anderen Stelle angezeigt, sprich Label verrutscht usw, kurz: Nichts ist da wo es sein soll.

    Meine Einstellungen von der Form:

    AutoSize "False" (hatte auch schon True, änderte nix)
    AutoSizeMode "GrowOnly"
    Auto AcaleMode "Dpi"
    FormBorderStyle "FixedSingle"
    MaximizeBox "False"
    Size "1729; 1060"
    SizeGripStyle Auto
    Anchor bei allen Tools "topleft"

    Kann mir irgendjemand sagen woran das liegen könnte?
    Monitor hat 1920x1200 und 100% Skalierung, die anderen vermutlich andere Einstellungen.

    Was ich brauche ist ein Weg, dass die Exe auf allen Rechnern funktioniert, egal welche Auflösung oder sonstwas sie haben.

    Wenn jemand einen Weg weiß wäre das super, mir fällt nix mehr ein...
    Ich hab auch manchmal Probleme mit der Grafik auf anderen Rechnern - also "den Weg" auch noch nicht gefunden - am Ende gibts den vlt. garnet.

    Was sich relativ robust verhält ist der Einsatz von TableLayoutPanel.
    Und dann die TLP-Zeilen/Spalten in geeigneter Weise anlegen, und nix mit Anchor positionieren, sondern alles in die richtige TLP-Zelle tun, mit Dockstyle.Fill.

    Guggemol Layout in Windows.Forms - da wird u.a. mit TLP bischen rumgespielt.
    Schau dir mal TableLayoutPanel und FlowLayoutPanel an. Damit bekommt man schon sehr viel hin. Dockstyle, Padding, Margin helfen hier auch weiter um die Controls sauber zu platzieren.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    Wenn du die auf anderen Rechnern laufen lässt, nutzt du dann die Debug.exe oder die publish.exe? Denn da unterscheiden sich die Dateien auch um etwaige Informationen. Und ist eventuell auf dem Zielrechner ein anderes Themes eingestellt, das eine Änderung bewirken könnte?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!