Here's a convinience function for determining Windows version:

Qt Code:
  1. typedef enum {Vista, Windows, XP} WindowsVersion;
  2.  
  3. WindowsVersion getWindowsVersion(){
  4. OSVERSIONINFOEX osvi;
  5. BOOL bOsVersionInfoEx;
  6. ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX));
  7. osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
  8.  
  9. if( !(bOsVersionInfoEx = GetVersionEx ((OSVERSIONINFO *) &osvi)) ){
  10. osvi.dwOSVersionInfoSize = sizeof (OSVERSIONINFO);
  11. if (! GetVersionEx ( (OSVERSIONINFO *) &osvi) )
  12. return Windows;//default
  13. }
  14.  
  15. switch (osvi.dwPlatformId){
  16. case VER_PLATFORM_WIN32_NT:
  17.  
  18. if ( osvi.dwMajorVersion == 5 && osvi.dwMinorVersion == 1 )
  19. return XP;
  20.  
  21. if ( osvi.dwMajorVersion >= 6 )
  22. return Vista;
  23. }
  24. return Windows;
  25. }
  26.  
  27. class CheckBoxStyleNoFocusDraw_XP: public QWindowsXPStyle{...}
  28.  
  29. class CheckBoxStyleNoFocusDraw_Windows: public QWindowsStyle{...}
To copy to clipboard, switch view to plain text mode