Moin, Moin,

ich schlage folgendes vor :

In Cellclick folgendes implementieren:

  if IsContextualClick Then
    gewaehlte_spalte=column
   
  else
    zeilen_index=row // gewaehlte zeile mermen -1 keine zeile gewählt !!
  end if

zeilen_index ist die gewählte Zeile und wird immer gesetzt wenn die Zelle nur 
angeklickt wird.


in ConstructContetualMenu

  // 3.10 27.10.2012
  dim i,ende As Integer
  ende=Ubound(e_import)
  for i=0 to ende
    if e_import(i)<>"" then
      base.append (New MenuItem(e_import(i)))
    end if
  next
  base.append (New MenuItem(k_txt_nicht_belegt))
 // hier restaurieren Zeile
 if zeilen_index>-1 Then
    me.listIndex=zeilen_index
  end if
  
  return true
  // 3.10 27.10.2012

Bei mir funktioniert das, da zuerst Cellclick, dann Construct…. aufgerufen wird.
  

MfG
Michael Ebsen

http://www.budget-software.de


Am 09.02.2013 um 19:15 schrieb Stefan Mettenbrink <[email protected]>:

> Ich habe eine Listbox, der ich in folgender Weise ein Kontextmenü
> spendiere:
> 
> ConstructContextualMenu
> base.AppendSubMenuitem Punkt1
> base.AppendSubMenuitem Punkt2
> base.AppendSubMenuitem Punkt3
> Return true //display the contextual menu
> 
> ContextualMenuAction
> if Hititem.Text=Punkt1 then
>   ...
> elseif Hititem.Text=Punkt2 then
>   ...
> 
> 
> 
> Funktioniert weitestgehend. Leider werde aber die zuvor selektierten
> Zeilen der Listbox deselektiert. Eigentlich wollte ich eine Auswahl
> (oder alle) Zeilen selektieren und per Kontextmenü zu diesen Zeilen
> Aktionen durchführen lassen.
> 
> Wie verhindere ich, dass der Aufruf des Kontextmenüs meine Selektion
> beeinflusst?
> 
> Gruß, Stefan Mettenbrink.
> 


Antwort per Email an