Fehlerhafte Darstellung



  • Hallo,
    ich habe ein (simples) Programm in C++ 2008 geschrieben.

    Wenn ich das Programm auf meinem PC öffne, dann wird alles richtig angezeigt. Öffne ich das Programm jedoch auf einem anderen PC, so ist die Darstellung fehlerhaft.

    Hier ein Screenshot:
    - http://s195130324.online.de/wewe.jpg

    Ich habe das Programm auf mehreren PC's getestet. Die Darstellung ist immer unterschiedlich. Nur auf meinem PC, auf dem ich das Programm entworfen habe funktioniert die Darstellung richtig.

    Hat einer von euch eine Idee woran das liegen kann ?

    Danke,
    mfg Benjamin

    -------



  • Gib mal mehr Infos.
    So was kenne ich nur von der Webprogrammierung.
    Wie erstellst Du die Steuerelemente?
    Statisch oder Dynamisch?
    Welches Betriebssystem?

    Gruß

    Doug_HH



  • Hallo,

    So was kenne ich nur von der Webprogrammierung.

    Oh ja, dieses Problem ist mir auch bekannt. 🙂

    Wie erstellst Du die Steuerelemente?
    Statisch oder Dynamisch?
    Welches Betriebssystem?

    Die Steuerelemente erstelle ich mit dem Forms Designer (also nicht dynamisch).
    Ich habe das Programm bisher nur auf Rechnern mit Windows XP getestet.

    Ich werd versuchen noch genauere Infos zu liefern, nur ist es eben so, dass ich bisher noch überhaupt keine Idee habe woran die fehlerhafte Darstellung liegen könnte.

    Und ihr habt solche Probleme noch nie gehabt ?

    Ich benutze übrigens Visual Studio 2008.

    Vielen Dank,
    mfg Benjamin

    ---



  • Kann es an einer anderen DPI einstellung liegen?



  • Hallo,
    also ich hab mal ein wenig rumprobiert und was interessantes festgestellt. Wenn ich die Steuerelemente (z.B. Buttons, ...) mit dem Forms Designer erstelle, dann funktioniert die Darstellung nur auf meinem PC.

    Setze ich jedoch während der Laufzeit die Grösse und Position der Steuerelemente neu, so wird alles wieder in der richtigen Grösse und Position dargestellt. Ich habe jetzt (als Beispiel) mal diesen Code verwendet:

    System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)
    {
    this->button1->Width = 52;
    this->button1->Height = 45;
    this->button1->Left = 12;
    this->button1->Top = 12;

    this->button2-> Width = 52;
    ...
    }

    Kann mir jemand erklären warum das so ist ?

    Danke,
    mfg Benjamin

    ----



  • Und die gleichen Angaben stehen auch in dem Code vom Designer?
    Pack mal den Code in das Activated-Event von Form1.
    Das wird sicherlich was mit der Auflösung zu tun haben, kenne ich so wirklich nicht.
    Noch nie gehabt...



  • Hallo,

    Und die gleichen Angaben stehen auch in dem Code vom Designer?
    Pack mal den Code in das Activated-Event von Form1.
    Das wird sicherlich was mit der Auflösung zu tun haben, kenne ich so wirklich nicht.
    Noch nie gehabt...

    Wenn ich den Code in das Activated-Event packe, dann passt die Darstellung wieder.

    Mein Notebook-Bildschirm hat eine Auflösung von 1440x900. Das ist nicht unbedingt Standard. Glaubt ihr dass es vielleicht damit zu tun hat ?

    Danke,
    mfg Benjamin



  • Ich tippe auch auf unterschiedliche DPI-Einstellungen (96 <-> 120).

    Schau mal unter den Eigenschaften der Grafikkarte bzw. Monitor:
    Systemsteuerung / Anzeige: Tab "Einstellungen" - Button "Erweitert" - Tab "Allgemein" - "DPI-Einstellung"

    Und dann überprüf' mal die "AutoScaleMode"-Eigenschaft deines Forms.

    (wobei verwunderlich ist, daß nur der 2. Button eine andere Position hat?)



  • Hallo,

    Ich tippe auch auf unterschiedliche DPI-Einstellungen (96 <-> 120).
    Und dann überprüf' mal die "AutoScaleMode"-Eigenschaft deines Forms.

    Also bei mir war die AutoScaleMode-Eigenschaft falsch eingestellt. Darum sind die Probleme aufgetreten.

    Jetzt habe ich aber noch ein kleines Problem und zwar mit den Labels. Die Labels in meinem Programm werden zwar richtig positioniert, der Text in den Labels hat aber auf dem einen PC einen anderen Abstand von der Labeloberkante als auf dem anderen PC.

    Wisst ihr woran das liegen könnte ?

    Ich habe mir alle Eigenschaften des Labels angesehen, aber mir ist keine Einstellung aufgefallen die evtl. nicht stimmen könnte.

    Habt ihr noch eine Idee ?

    Vielen Dank,
    mfg Benjamin

    ---------


Anmelden zum Antworten