C++ Builder Snippets  

Setzen des Windows-Dezimaltrennzeichens auf Punkt oder Komma:
 
//-----------------------------------------------------------------
// Setzen des Windows-Dezimaltrennzeichens auf Punkt oder Komma:
//-----------------------------------------------------------------
const int LC_DOT   =1;
const int LC_COMMA =2;

// Parameter: LC_DOT für Punkt, LC_COMMA für Komma:
bool SetDecimalSeparator(int ilDecSep)
{
  bool blRetVal = true;
  char * pDecSep = new char[2];
  char * pThousandSep = new char[2];

  GetLocaleInfo(GetSystemDefaultLCID(),LOCALE_STHOUSAND,pThousandSep,2);
  GetLocaleInfo(GetSystemDefaultLCID(),LOCALE_SDECIMAL,pDecSep,2);

  if (ilDecSep == LC_DOT)
  {
    if (pThousandSep[0] != ' ')
      if(!SetLocaleInfo(GetSystemDefaultLCID(), LOCALE_STHOUSAND, " "))
        blRetVal = false;

    if (pDecSep[0] != '.')
      if(!SetLocaleInfo(GetSystemDefaultLCID(), LOCALE_SDECIMAL, "."))
        blRetVal = false;
  }
  else if (ilDecSep == LC_COMMA)
  {
    if(pThousandSep[0] != '.')
      if(!SetLocaleInfo(GetSystemDefaultLCID(), LOCALE_STHOUSAND, "."))
        blRetVal = false;
    if(pDecSep[0] != ',')
      if(!SetLocaleInfo(GetSystemDefaultLCID(), LOCALE_SDECIMAL, ","))
        blRetVal = false;
  }
  delete[] pDecSep;
  delete[] pThousandSep;
  return blRetVal;
}



© '99-2000 by S. Kreutzmann