Fórum funcão que retorna uma constante. #291061
08/08/2005
0
É Possivel uma função retornar as teclas (vk_f1,vk_f2 etc..) sabendo o itemindex de um combobox.
Por exemplo:
cmbteste.itemindex = 0 a função deverá retornar vk_f1.
cmbteste.itemindex = 1 deverá retornar vk_f2.
e assim por diante...
Tentei um pouco mas o itemindex é inteiro, com case não funcionou.
Por procedimento também não deu certo, só consegui no OnkeyDown do edit.
Mas assim fica complicado porque vou repetir muitas vezes isso.
Obrigado
Lynx
Curtir tópico
+ 0Posts
08/08/2005
Lynx
Segue abaixo o código
function TfrmPrincipal.AtalhoMenuCadastro() : Integer; var tecla : integer; begin case FrameMenuPreferencias.cmbAtalhoCadastro.ItemIndex of 0:tecla:= VK_F1; 1:tecla:= VK_F2; 2:tecla:= VK_F3; 3:tecla:= VK_F4; 4:tecla:= VK_F5; 5:tecla:= VK_F6; 6:tecla:= VK_F7; 7:tecla:= VK_F8; 8:tecla:= VK_F9; end; Result:= tecla; end;
e no onkeydown do edit
if key = AtalhoMenuCadastro() then ShowMessage(´teste´);
valeu
Gostei + 0
08/08/2005
Massuda
var Tecla: Word; ... Tecla := VK_F1 + CmbTeste.ItemIndex; ...
Gostei + 0
08/08/2005
Lynx
A Função ficou assim.
function TfrmPrincipal.AtalhoMenuCadastro(tipo : integer) : Integer; var tecla : integer; begin if tipo = 1 then begin case FrameMenuPreferencias.cmbAtalhoCadastro.ItemIndex of 0:tecla:= VK_F1; 1:tecla:= VK_F2; 2:tecla:= VK_F3; 3:tecla:= VK_F4; 4:tecla:= VK_F5; 5:tecla:= VK_F6; 6:tecla:= VK_F7; 7:tecla:= VK_F8; 8:tecla:= VK_F9; end; Result:= tecla; end else if tipo = 2 then begin case FrameMenuPreferencias.cmbAtalhoPesquisa.ItemIndex of 0:tecla:= VK_F1; 1:tecla:= VK_F2; 2:tecla:= VK_F3; 3:tecla:= VK_F4; 4:tecla:= VK_F5; 5:tecla:= VK_F6; 6:tecla:= VK_F7; 7:tecla:= VK_F8; 8:tecla:= VK_F9; end; Result:= tecla; end; end;
no keydown dos edits eu faço if key = atalho(1 ou 0) , para chamar o form de acordo com a tecla de atalho que ele escolheu.
No menu preferencias, tem para escolher a tecla de F1 até F9, para cadastros e pesquisa, quando o usuário escolhe eu guardo o valor que ele escolheu em um arquivo .INI.
Quando abre o sistema eu leio o arquivo .ini e deixo o combobox na posição que o usuário definiu.
Resumindo
Está tudo funcionando perfeito, e o usuário pode escolher a tecla que ele quiser para abrir um novo form.
valeu :)
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)