Thanks for this Glenn. You are correct, it was the focus.

I still can't get it working within my app - the code that uses Select is being 
called from a tab strip event (which shows the listview) - so perhaps it has 
something to do with that. I'll do more digging.

jez.
  ----- Original Message ----- 
  From: Glenn W Munroe 
  To: 'Jez White' ; 'Win32-GUI' 
  Sent: Thursday, December 02, 2004 7:07 PM
  Subject: RE: [perl-win32-gui-users] Pre selecting items in list Views and 
List Boxes


  Yes, but that's just focus. Adding

    $mainWindow->ListView->SetFocus;

  after

    $mainWindow->ListView->Show;

  fixes that. I'm not quite sure why the Listbox example doesn't need it.

  Glenn



------------------------------------------------------------------------------
  From: Jez White [mailto:[EMAIL PROTECTED] 
  Sent: Thursday, 02 December, 2004 16:00
  To: Glenn W Munroe; 'Win32-GUI'
  Subject: Re: [perl-win32-gui-users] Pre selecting items in list Views and 
List Boxes


  Interesting - it does work - although the selected items are grey not blue 
(but if a third item is selected by clicking and holding shift, they all turn 
blue) - this is using XP styles - do you get the same?

  Now, as for why it doesn't work in my main app...

  Thanks,

  jez. 
    ----- Original Message ----- 
    From: Glenn W Munroe 
    To: 'Jez White' ; 'Win32-GUI' 
    Sent: Thursday, December 02, 2004 5:01 PM
    Subject: RE: [perl-win32-gui-users] Pre selecting items in list Views and 
List Boxes


    Jez,

    Hummm. I was pretty sure you would have tried that. There must be something 
else wrong. Does this modification to your example not work for you?

    ===================================================================

    use Win32::GUI;
     
    my $mainWindow = new Win32::GUI::Window (
        -name     => "mainWindow",
        -title    => "Testing",
        -pos      => [0, 0],
        -size     => [300, 300],
    );
     
    my $lb=$mainWindow->AddListView (
       -name   => "ListView",
       -pos      => [20, 60],
       -size     => [100, 120],
        );

    $mainWindow->ListView->InsertColumn(
     -index  => 0,
     -text  => "Item",
    );

    $mainWindow->ListView->ColumnWidth(0,90);

    $mainWindow->ListView->InsertItem(-text => 'One');  
    $mainWindow->ListView->InsertItem(-text => 'Two');  
    $mainWindow->ListView->InsertItem(-text => 'Three');  
    $mainWindow->ListView->InsertItem(-text => 'Four');  
    $mainWindow->ListView->Hide;
     
    my $show=$mainWindow->AddButton (
       -name   => "Button",
       -pos      => [20, 20],
       -size     => [40, 40],
       -text     => 'Show',
       -onClick => \&Show,
        );
     
    my $hide=$mainWindow->AddButton (
       -name   => "Button2",
       -pos      => [60, 20],
       -size     => [40, 40],
       -text     => 'Hide',
       -onClick => sub {$mainWindow->ListView->Hide;},
        );
        
    $mainWindow->Show;
     
    Win32::GUI::Dialog();
     
    sub Show {
      #select the first and last items
      $mainWindow->ListView->Show;
      $mainWindow->ListView->Select(0);
      $mainWindow->ListView->Deselect(1);
      $mainWindow->ListView->Deselect(2);
      $mainWindow->ListView->Select(3);
      return 1;
    }




----------------------------------------------------------------------------
    From: Jez White [mailto:[EMAIL PROTECTED] 
    Sent: Thursday, 02 December, 2004 13:39
    To: Glenn W Munroe; 'Win32-GUI'
    Subject: Re: [perl-win32-gui-users] Pre selecting items in list Views and 
List Boxes


    Hi Glenn,

    Yeah - I tried that - but no joy - if Select is used in the list box it 
doesn't work either. Well, it doesn't work when the -multisel option is used, 
and only 1 row is selected when it's turned off.

    Cheers,

    jez.

      ----- Original Message ----- 
      From: Glenn W Munroe 
      To: 'Jez White' ; 'Win32-GUI' 
      Sent: Thursday, December 02, 2004 4:33 PM
      Subject: RE: [perl-win32-gui-users] Pre selecting items in list Views and 
List Boxes


      Jez,

      I hope this isn't a stupid question, but have you tried Select(INDEX) and 
Deselect(INDEX)? I don't think they are exact equivalents of SetSel, but they 
do what I *think* you want to do.

      Glenn



--------------------------------------------------------------------------
      From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jez White
      Sent: Thursday, 02 December, 2004 13:07
      To: Win32-GUI
      Subject: [perl-win32-gui-users] Pre selecting items in list Views and 
List Boxes


      Hi,

      I'm trying to pre select several items that appear in a list view. These 
items have been selected by the user previously, so when the list is reshown 
later I want those items to be pre-selected. The example below works with a 
list box - but for the life of me, I can't seem to get it working with a list 
view? Am I missing something?

      Cheers,

      jez.

      ------

Reply via email to