Elemento selecionado num List

Dicas do Oracle Forms Builder - Blocos, Itens, LOV, Canvas, Triggers, comandos, PLL, d2kwutil, FMB, Alert, menus, etc
Responder
genilton
Rank: Estagiário Júnior
Rank: Estagiário Júnior
Mensagens: 1
Registrado em: Seg, 01 Out 2007 2:02 pm
Localização: Maceió-AL

Olá...


como saber qual o elemento selecionado num Tlist?

Abraços
Trevisolli
Moderador
Moderador
Mensagens: 2016
Registrado em: Qua, 12 Jan 2005 3:25 pm
Localização: Araraquara - SP
Abraço,

Trevisolli
OCA Oracle PL/SQL Developer Certified Associate
OCP Oracle Forms Developer Certified Professional
Araraquara-SP

Brother,

Joga um message no WHEN-LIST-CHANGED.
Avatar do usuário
Porva
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 342
Registrado em: Seg, 29 Jan 2007 7:36 am
Localização: São Paulo/SP
Rafael S. Nunes
São Paulo/SP

e aí galera, aproveitando um tópico antigo, estou com um lance aqui que não sei como fazer..

não entendi bem sua dica Paulão, mas eu estou precisando saber em qual linha o cursor está posicionado no list, pra utilizar a função GET_LIST_ELEMENT_VALUE('lista', índice_focado), como saber o índice que está focado no momento?
Tineks
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 365
Registrado em: Ter, 24 Mai 2005 2:24 pm
Localização: Araraquara - SP
Cristiano (Tineks)
Araraquara - SP

E ai Porva, beleza?

eu tenho uma função que eu achei na net um dia, porem eu nunca utilizei ela.. :lol:
não sei se vai funcionar, segue ela ai..

Selecionar tudo

FUNCTION getlistindex (listname IN VARCHAR2) RETURN PLS_INTEGER IS
   hlist              item           := FIND_ITEM (listname);
   irc                PLS_INTEGER    := 0;
   total_list_count   NUMBER         := 0;
   currvalue          VARCHAR2 (100);               /* increase if required*/
BEGIN
   currvalue := NAME_IN (listname);
   total_list_count := GET_LIST_ELEMENT_COUNT (hlist);

   FOR i IN 1 .. total_list_count
   LOOP
      IF currvalue = GET_LIST_ELEMENT_VALUE (hlist, i)
      THEN
         irc := i;
         BREAK;
      END IF;
   END LOOP;

   RETURN irc;
EXCEPTION
   WHEN OTHERS
   THEN
      MESSAGE ('Error getting list index on list:' || listname || '-'|| SQLERRM);
END;
[]'s!!!
Avatar do usuário
Porva
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 342
Registrado em: Seg, 29 Jan 2007 7:36 am
Localização: São Paulo/SP
Rafael S. Nunes
São Paulo/SP

valeu Cristiano, achei uma semelhante aqui no sistema também, não postei antes porque tava dando umas travadas no sistema e não tava conseguindo testar ela..

Selecionar tudo

FUNCTION traz_item( pc_bloco VARCHAR2,pc_l VARCHAR2 ) RETURN NUMBER IS
  você_valor   VARCHAR2( 300 );
  vn_count_l NUMBER         ;
  vn_i       NUMBER := 1    ;
  vn_ret     NUMBER := 0    ;

BEGIN

  você_valor := NAME_IN( pc_bloco||'.'||pc_l );
  vn_count_l := GET_LIST_ELEMENT_COUNT( pc_l );

  LOOP

    IF GET_LIST_ELEMENT_VALUE( pc_l, vn_i ) = você_valor THEN
      vn_ret := vn_i;
      EXIT;
    END IF;

    vn_i := vn_i + 1;
    EXIT WHEN vn_i > vn_count_l;

  END LOOP;

  RETURN vn_ret;

END;
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 10 visitantes