StepChoiceSelection
Formulários, interação
Descrição
Move a opção selecionada de um campo de lista visível e gravável pelo desvio pedido
O valor atual do campo é confrontado com os nomes de exportação e os nomes de apresentação de todas as opções configuradas e, quando nenhuma opção corresponde, um desvio negativo salta para a última opção enquanto um desvio não negativo seleciona a primeira
O alvo resultante é limitado à lista de opções, o novo valor é retirado do nome de exportação da opção ou do respetivo nome de apresentação quando não existe nome de exportação, e um valor inalterado conclui sem qualquer ação ou edição
Um valor que muda foca e edita o campo, envia a ação de tecla /K do widget, guarda o novo valor transitório e termina com CommitEdit, pelo que /V, /F e OnValueChanged correm pelo caminho de consolidação normal
Quando /K é vetado num campo que não estava a ser editado, a edição acabada de iniciar é novamente cancelada
Declaração
function StepChoiceSelection(FieldIndex, Delta: Integer): Integer;
Parâmetros
| FieldIndex | Índice do campo ou do Widget temporário de um campo de escolha visível e gravável |
|---|---|
| Delta | Número de opções a mover; negativo para passos para trás e positivo para passos para a frente |
Valor devolvido
Devolve 1 quando o passo de seleção terminou ou o valor já correspondia, e 0 quando o campo é inválido, não é um campo de escolha, é só de leitura, não tem opções, ou uma ação expedida ou uma confirmação recusou a alteração
Exemplo
// Keyboard path used by DispatchInputEvent for choice fields
Steps := -1; // fikUp moves to the previous option
Handled := Session.StepChoiceSelection(FieldIndex, Steps) = 1;
Consulte também
CommitEdit, SetEditValue, DispatchInputEvent, BeginEdit, OnValueChanged