Dialogelemente skalieren???? Gibts da was einfacheres als SetWindowPos()????



  • Hi,

    Ich hab das folgende Problem. In meiner Anwendung verwende ich eine reihe von CFormViews, die ich mir im Resource-editor zusammengebastelt hab. Auf meinem PC sieht das ergebnis auch gut aus....

    ..Wenn ich nun die Anwendung auf meinem laptop laufen lasse, sind die Dialogelemente einfach zu gross etc...Die Ursache ist klar: schliesslich hat mein laptop andere geraeteeigenschaften etc....

    Ich muss also IRGENDWIE die groesse und Position der Dialogelemente anpassen...Nun koennte ich ja jetzt jedes dialogelement mit SetWindowPos() explizit zeichnen, aber dann sitz ich ja naechstes jahr noch hier..:)...

    ==>Gibts vielleicht irgendeine Windows-funktion in CFormView etc., die die Dialogelemente automatisch skalieren kann???

    Es scheint, die funktionen SetViewport(), SetWindowExt() etc. dienen zum "zoomen" von Fensterinhalten, aber offensichtlich funktioniert das wohl nur wenn man mit OnDraw() irgendwas zeichnen will....Ich benutze aber ondraw() nicht....

    Ich denke, eine menge leute haben schon das problem gehabt, ihre dialoge zur laufzeit anzupassen....Deshalb wundert es mich ein wenig, dass ich noch nichts wirklich hilfreiches gefunden hab....:(...

    ...Bleibt mir wirklich nix andres uebrig als alle Dialogelemente mit SetWindowPos selbst zu skalieren???? Und wenn ja, weiss jemand wie man das am besten macht?????

    VIELEN DANK fuer jede Antwort....



  • ich glaube da wirst du selbst Hand anlegen müssen. Die Dialog_Ressorucen werden zur Compilezeit abgearbeitet. Da zur Laufzeit dann die Größe ändern geht nicht. Es gitb aber glaube Steuerlemente im Netz, die sich diesem Problem annehmen



  • man könnte ja mal bei CodeProject schaun die haben immer was passendes

    http://www.codeproject.com/info/search.aspx?artkw=cformview

    Gruß Matthias


  • Mod

    Du findest Code ohne Ende hier:
    [url]http://www.codeproject.com/KB/dialog/index.aspx#Dialog and Windows Programming - Control Positioning[/url]
    @CTecS: Es heißt CFormView 😉



  • Ja Sorry, hatte nur die aktuelle URL rauskopiert, die stimmt ntürlich net wirklich, aber ich glaube den Schritt hätte er selbst gefunden 🙂

    Gruß Matthias


Anmelden zum Antworten