MessageBox / PocketPC
-
Ich weiß das sich dieses Forum nicht sehr viel mit PocketPC beschäftigt, aber da ich bereits in anderen (PPC) Foren keinen Erfolg hatte, versuche ich es einfach mal hier. ( In der Hoffnung das irgendwer mir helfen kann)
Auf meinem PPC ist eine englische Version PPC 2003 drauf!
Bei dem Aufruf einer standard MessageBoxMessageBox(L"Wollen Sie dies?",L"Abfrage XY",MB_YESNO);
bekomme ich wie nicht anders zu erwarten eine standard messagebox geliefert! Doch leider (nur) mit "Yes" und "No" zur Auswahl. Nun würde ich gerne anstatt des englischen "Yes" und "No" ein simpeles "Ja" oder "Nein" in der Messagebox anzeigen! Unter VC 6.0 ( deutsch ) und (deutschen) Betriebsystem klappte es erwartungsgemäß mit "Ja" und "Nein".
Kann ich dies irgendwie (wo) beeinflussen dass trotz englischem BS eine deutsche Standardausgabe der MessageBoxen angezeigt wird?Oder bin ich dazu gezwungen mir meine "deutschen" MessageBoxen selber zu schreiben?
ich hoffe jemand hat nen guten Tipp für mich!
thx sven
-
Also, ich kenne das nur vom normalen PC und da muss man die selber machen.
Ich habe mal an einer multilanguage Anwengung mitgearbeitet - da waren die Knöpfe immer auf Deutsch, egal was man eingestellt hat.
-
Danke für die Antwort!
Ich habe es schon fast befürchtet!
Wie könnte ich es denn am geschicktesten machen eine Klasse "MessageBoxDeutsch" zu erstellen?
Es wäre ja sehr umständlich jedesmal eine diese "MessageBox" als modalen Dialog aufzurufen! Wo ich dann jedesmal eine Instanz der Klasse haben muss um diese aufzurufen!// so z.B. #include "CMessageBoxDeutsch.h" ... MessageBoxDeutsch dlg; dlg.m_AusgabeText = "Ja oder Nein?" ; dlg.m_TitelText = "AbfrageXY"; dlg.m_Form = "MB_YESNO"; dlg.DoModal(); ..
Man könnte dies ja auch als nicht modalen Dialog aufrufen, was aber auch ein wenig Aufwand ist, oder?
Ich würde gerne diese Klasse mit wenigen Befehlen aufrufen, da dies in meiner Anwendung (SDI) nicht gerade selten geschehen soll.
Ich hoffe ihr könt mir dazu einige Tips geben!thx a lot
Sven
-
Ja wo ich gerade schon mal dabei bin!
Der Vorteil der normalen Message ist ja das der Text der ausgegeben wird in der Größe felexibel ist. Sprich wenn ich einen langen Text habe der in der Messagebox ausgegeben werden soll, ist meine MB auch demensprechend groß. Wie kann man dieses aus einfache weise in eine eigenen MessageBoxKlasse abfangen!Mein Idee ist, jedes mal bevor die Klasse angezeigt wird die textlänge zu messen und anhand dieser Größe, die Größe des Dialoges fest zu legen. Das dürfte aber sehr viel Arbeit sein dieses ordenlich und auch gutaussehend hinzu bekommen!
Hat wer dazu evtl. nen besseren Vorschlag wie ich dies realisieren könnte!thx Sven
-
Also, Messageboxen sind doch immer modal, oder?
Ansonsten habe ich aber auch keine brauchbare Idee, wie man das lösen könnte.
Ich hatte als Ideen:
- statische Funktion in der Klasse
- Komplette Abwicklung im Konstruktor (hat aber keinen Rückgabewert)
- Zeiger auf die Buttons der Messagebox holen und dann SetWindowText machen
- Funktion, der du wie gewohnt die Parameter gibst und die dann den Dialog aufruft.Tja, mir hat alles nicht gefallen - aber vielleicht hast du ja einen anderen Geschmack.
-
Also, Messageboxen sind doch immer modal, oder?
hast recht sollten Sie zumindestens sein, sonst wäre der Sinn der Messagebox ein wenig verfehlt!
- statische Funktion in der Klasse
- Komplette Abwicklung im Konstruktor (hat aber keinen Rückgabewert)
- Zeiger auf die Buttons der Messagebox holen und dann SetWindowText machen
- Funktion, der du wie gewohnt die Parameter gibst und die dann den Dialog aufruftIch glaub unsere Geschmäcker sind wohl änlich, alles nicht sehr schön!
Vor allen da meine Anwendung schon recht viele Klassen hat, und in jeder dieser dann separat die funktionalität der neuen MessageBox einbauen ist etwas viel!Aber ich habe eine Hilfsklasse in meiner Anwendung in der ich bestimmte Sachen erledige um nicht immer den selben Code bei bestimmten Aufgaben auzuführen.
Diese Klasse kann ich von überall aufrufen. Es würde sich also anbieten in dieser Klasse ein Funktion zu integrieren die einen modalen Dialog mit bestimmten Werten erzeugt und anzeigt! Ich denke das ist die "einfachste" Lösung!Sven