Nas versões anteriores de 4D, o deslocamento das variáveis e campos imagem podia ser feita através do evento formulário On Picture Scroll (valor 59).Em 4D v15, a gestão desses eventos foi estendida aos objetos list box (veja abaixo). Consequentemente, o evento de formulário On Picture Scroll foi renomeado On Scroll e agora também está disponível para os list boxes na lista de propriedades. A ação deste evento em imagens não é alterada.
Notas de compatibilidade:
Há duas pequenas diferenças entre a implementação do evento de formulário On Picture Scroll nas versões anteriores de 4D eo novo evento On Scroll:
- On Picture Scroll era gerado só no método de objeto e no método formulário (mas não pode ser selecionado ou desativado nas propriedades de formulário). Para uma melhor consistência, a partir de 4D v15, o evento On Scroll era gerado apenas no método de objeto. Se seu aplicativo convertido manejava eventor de deslocamento de imagens desde o o método de formulário, você tem que mover o código para o método de objeto apropriado.
- Na pilha de eventos On Picture Scroll poderia ser chamado antes de outros eventos do usuário, comoOn Click. On Scroll sempre que gerou após os outros eventos do usuário.
Em 4D v15, o evento On Scroll está disponível para dois objetos que podem ter rolagem:
- Os campos e variáveis no formato "Truncado (não centrado)" (já disponíveis nas versões anteriores de 4D com o nome On Picture Scroll),
- Os list box (novo em 4D v15).
Por padrão, o evento não é selecionado para os objetos na lista de propriedades.
O evento de formulário On Scroll é gerado assim que um usuário mova o objeto de formulário dentro da área que o contém. O evento é gerado somente quando o deslocamento é o resultado de uma ação do usuário: usando barras e / ou cursores de rolagem, com a roda do mouse ou o teclado. Ele não é gerado quando o objeto se move devido à execução do comando OBJECT SET SCROLL POSITION .
Esse evento é acionado após todos os outros eventos relacionados com a ação de movimento (On Clicked, On After Keystroke, etc.).
O evento só é gerado no objecto método (não no método de formulário).
Se você deseja desenhar um retângulo vermelho ao redor de uma célula selecionada de um list box e quer que o retângulo se mova junto com o list box se for deslocado verticalmente pelo usuário. No método objeto do list box, pode escrever:
Como resultado, o retângulo vermelho segue o deslocamento do list box:
