Why is that good? If the user is just visiting that country and actually doesn't speak that language, he can't switch it?
If a user visit a country and doesn't speak that language he/she will change the language for entire system not just for an application. Simple is better. For example: if i have more than 10 applications made by other U++ programmers from this forum and all these applications have language switching implemented as a user choice in application and a friend of mine from Germany visits me for one week and i let him using my PC than he will have to switch language to German individually for every application he use. I think it's better to change once the system language and then the application to use system language instead of changing language in every application.
Andrei