All,

To fix the colour bug on XP you need to create a class:

 my $clsFetch = Win32::GUI::Class->new(
     -name => "classxpcolour",
     -color => 16,) or die("Could not create Class\n");

You then attach the class to the window when you create it. This is will work even if the OS isn't XP. I've also got a hack to "fix" this in the XS code - but I remember Aldo mentioning he had fixed this in later builds?

I’d love to try and get themes working (even though I hate them) but my skills aren’t up for the job:)

Cheers,

jez.

From: "Steve Pick" <[EMAIL PROTECTED]>
To: "Steve Pick" <[EMAIL PROTECTED]>,"Chris" <[EMAIL PROTECTED]>,<perl-win32-gui-users@lists.sourceforge.net>
Subject: Re: Re: [perl-win32-gui-users] Windows XP Color Bug
Date: Fri, 21 Nov 2003 18:56:28 -0000

Right,

I've found this link which may fix the problem of Win32::GUI not using Windows XP themes if they are available. However I don't have Windows XP, so someone who does have WinXP and Visual Studio .NET (2003?) might be able to try creating these crazy manifests:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwxp/html/xptheming.asp


  ----- Original Message -----
  From: Steve Pick
  To: Chris ; perl-win32-gui-users@lists.sourceforge.net
  Sent: Friday, November 21, 2003 6:28 PM
  Subject: Re: Re: [perl-win32-gui-users] Windows XP Color Bug


  That's a *dreadful* "solution".

  1. It doesnt "fix" anything it just makes the background grey.
2. You used a billion labels made wide with spaces instead of using ONE with -width => $win->Width, -height => $win->Height 3. This would probably screw up capturing events, would make resizing excrutiatingly slow and flickery, and is generally just *bad*.

Do not do this, use one label until something better comes along that will set the background correctly (maybe by setting window class color properties? I have 2k so i cant check it out):

  $win->AddLabel ($win,
      -name => "background",
      -notify => 0,
      -width => $win->Width(),
      -height => $win->Height(),
      -top => 0,
      -left => 0
  );

  Add the label before adding anything else. This will cause uber-flicker.

  Steve

    ----- Original Message -----
    From: Chris
    To: perl-win32-gui-users@lists.sourceforge.net
    Sent: Friday, November 21, 2003 6:04 PM
    Subject: Re: Re: [perl-win32-gui-users] Windows XP Color Bug


However, some people have hacked the playschool mode, to make it allow custom themes, which was simply done by removeing the check to make sure the themes are signed, so bow some of use have very nice looking gui's. I found a tempary fix for the issue, but it's not very cool, for ($zzz=0; $zzz < 1000; $zzz=$zzz+13) { $Wmain->AddLabel( -name => "back$zzz", -text => " ", -wrap => 0, -top => $zzz, ); } this will fill the window with the proper color, it's just not the best.



    Hi,



This happens with most MFC apps. I havent found a way to fix it. This is a crazy bug, most MFC apps will probably exhibit this on windows xp. Microsoft are crazy for not detecting MFC and auto-converting.



The only fix is to disable Playskool Mode in windows xp, which you should have done anyway unless you're 5 years old :)



    Steve

    ----- Original Message -----

    From: Chris

    To: perl-win32-gui-users@lists.sourceforge.net

    Sent: Friday, November 21, 2003 1:25 AM

    Subject: [perl-win32-gui-users] Windows XP Color Bug



Does anyone have a way to resolve the windows xp color bug? If so, I think it would be a wonderful thing to include.



_________________________________________________________________
Get Hotmail on your mobile phone http://www.msn.co.uk/msnmobile


Reply via email to