Toon posts:

MessageDlg in div. talen?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Waarschijnlijk een simpel probleem, maar het houdt mij echt al dagen (en nachten) wakker:

Als ik in Delphi hetvolgende doe:
code:
1
MessageDlg('blaat', mtInformation, [mbYes, mbNo], 0);

krijg ik een mooi schermpje met een Yes en No - button, maar als ik in de settings van mijn proggie heb staan dat ik de Nederlandse versie wil draaien, hoe worden de Yes en No-button dan een Ja en Nee-button?

Ik heb wel het een en ander gehoord/lezen over TLanguage, maar dat krijg ik echt niet aan de praat.

Verwijderd

misschien kan je deze functie gebruiken
code:
1
2
3
4
5
6
7
int MessageBoxEx(
    HWND hWnd,  // handle of owner window
    LPCTSTR lpText, // address of text in message box  
    LPCTSTR lpCaption,  // address of title of message box  
    UINT uType, // style of message box
    WORD wLanguageId     // language identifier
   );

Zie de (delphi/win32) help voor meer info

Verwijderd

Topicstarter
Die MessageBoxEx werkt opzich wel goed, maar dat met die talen gaat toch niet helemaal jofel.

Het maakt nl. niet uit welke taal ik invoer (LANG_ENGLISH, LANG_DUTCH, LANG_GREEK etc.), de taal in de buttons blijft Nederlands. Ik heb wel de veel talen ondersteuning van mijn Windows (W98) geinstalleerd, maar dat maakt niets uit.

Iemand een idee waarom dit niet werkt. Ligt dit aan win98, of misschien om dat ik Delphi6 PE gebruik? Of heb ik het stiekem toch niet begrepen?

Verwijderd

Topicstarter
Ondertussen het een en ander bij de support site van Microsoft gevonden.

Microsoft Support

Het lijkt er op dat het zo niet gaat werken.

Nou kan ik natuurlijk een eigen functie in elkaar gaan klussen met een eigen formpje ensow. Dat gaat alleen een beetje te veel tijd kosten. Is er niet iemand met een standaaroplossing voor dit probleem, of heeft iemand een soortgelijke functie al in elkaar gevrot?

  • Delpix
  • Registratie: September 2001
  • Laatst online: 27-11-2021

Delpix

Alanis Fan

Op maandag 31 december 2001 11:00 schreef master_n00b het volgende:
[..]
krijg ik een mooi schermpje met een Yes en No - button, maar als ik in de settings van mijn proggie heb staan dat ik de Nederlandse versie wil draaien, hoe worden de Yes en No-button dan een Ja en Nee-button?
[..]
Die Yes en No teksten kan je wijzigen in het bestand CONSTS.PAS. Daarin staan alle standaard strings.

Standaard locatie:
C:\Program Files\Borland\Delphi6\Source\Vcl\Consts.pas

Compileer die file na je wijzigingen en plaats je de DCU ervan in de onderstaande map:

C:\Program Files\Borland\Delphi6\Lib\Consts.dcu

-----------

of je kan Application.MessageBox gebruiken. Deze neemt de standaard Windows teksten over. Dus met een Nederlands windows word het OK en ANNULEREN en met een engelse windows OK en CANCEL.
code:
1
Application.MessageBox('TEKST', 'TITEL', MB_OKCANCEL + MB_ICONASTERISK + MB_DEFBUTTON1 + MB_APPLMODAL);

...beter bekend als AMFan


Verwijderd

Topicstarter
of je kan Application.MessageBox gebruiken. Deze neemt de standaard Windows teksten over. Dus met een Nederlands windows word het OK en ANNULEREN en met een engelse windows OK en CANCEL.

code:
--------------------------------------------------------------------------------
Application.MessageBox('TEKST', 'TITEL', MB_OKCANCEL + MB_ICONASTERISK + MB_DEFBUTTON1 + MB_APPLMODAL);
--------------------------------------------------------------------------------
Het probleem is nou net dat ik onafhankelijk van Windows wil werken. In mijn proggie is een settings form opgenomen waarop de gebruiker zijn taal kan selecteren. Als hij Duits kiest wordt alles in het Duits weergegeven, kiest hij Engels, dan is alles Engels, etc...

Alleen heb ik nog geen controle over de knoppen van de MessageBox. Want die zijn inderdaad Windows afhankelijk. In MessageBoxEx zit wel een taalafhankelijk argument, maar die werkt niet.

Ik kan het probleem dus ook niet oplossen door de strings 1 keer aan te passen in een include file. Ze moeten namelijk in het programma aanpasbaar zijn.

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

Helaas zul je dan zelf je messagebox moeten bouwen... Is op zich niet heel moeilijk, maar toch...

Localhost, sweet localhost


  • joepP
  • Registratie: Juni 1999
  • Niet online
Zelf bouwen? Neh!

Kijk maar eens bij www.torry.net, daar zijn vast wel componentjes te vinden die precies doen wat jij wil.

Beter goed gejat dan slecht bedacht ;)
Pagina: 1