CTRL + C com Gauge/Progress bar
Pessoal, sou iniciante e preciso fazer uma aplicação que, quando eu apertar CTRL + C (no caso, vou fazer por simulação de pressionamento de teclas), um gauge acompanhe o precesso de tranferencia dos dados para a memória.. pra assim q terminar a transferencia dos dados, eu disparo outra sequencia de teclas (CTRL + V).
.
Alguem ai sabe como posso fazer isso?
.
Ja consegui fazer a simulação de teclas e ta funcionando direitinho... o problema eh o gauge....
.
.
Alguem ai sabe como posso fazer isso?
.
Ja consegui fazer a simulação de teclas e ta funcionando direitinho... o problema eh o gauge....
.
Murillo Mayer
Curtidas 0
Respostas
Leonardo Xavier
24/11/2010
o que exatamente esta acontecendo com seu gauge?
GOSTEI 0
Murillo Mayer
24/11/2010
não está acontecendo nada...rrsrsrsrs....e quero q aconteça....
.
Resumindo quero isso aki:
SimularPrecionamento(CTRL + C);
gauge1.active := true;
Aí, quero uma rotina q intercepte esse precionamento e acompanhe a tranferência dos dados para a memória, e quando terminar a transferência dos dados, o gauge tem q estar em 100 %, aí...
gauge1.active := false;
Memo1.setFocus;
SimularPrecionamento(CTRL + V);
Ou seja, quero copiar um texto (de tamanho variável) para um Memo.
O Texto que será copiado é .pdf (configurado para leitura).
Como o andamento da cópia do texto pode ter tempo variável, quero acompanhar o acontecimento, pra poder liberar a procedure de CTRL+V só quando o arquivo já estiver na memória.
Tentar fazer Memo1.lines.LoadFromFile('arquivo.pdf') não resolve.....
Entendeu?
.
Resumindo quero isso aki:
SimularPrecionamento(CTRL + C);
gauge1.active := true;
Aí, quero uma rotina q intercepte esse precionamento e acompanhe a tranferência dos dados para a memória, e quando terminar a transferência dos dados, o gauge tem q estar em 100 %, aí...
gauge1.active := false;
Memo1.setFocus;
SimularPrecionamento(CTRL + V);
Ou seja, quero copiar um texto (de tamanho variável) para um Memo.
O Texto que será copiado é .pdf (configurado para leitura).
Como o andamento da cópia do texto pode ter tempo variável, quero acompanhar o acontecimento, pra poder liberar a procedure de CTRL+V só quando o arquivo já estiver na memória.
Tentar fazer Memo1.lines.LoadFromFile('arquivo.pdf') não resolve.....
Entendeu?
GOSTEI 0
Murillo Mayer
24/11/2010
Up....
GOSTEI 0
Leonardo Xavier
24/11/2010
Cara to tentando achar uma maneira de identificar as teclas precionadas Crtl+C , mas até o momento somente consegui achar a diferença entre ctr(13) e ctr(10), Estou estudando este procedimento, os progressos que eu pbtiver coloco aqui para vc acompanhar.
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
crtlc:string;
begin
crtlc:=chr(13);
ShowMessage('CTRL'+crtlc+'precionado');
end;
GOSTEI 0
Murillo Mayer
24/11/2010
Entendo...
.
Bom, uso a procedure abaixo pra simular o pressionamento das teclas...
A única forma q encontrei pra fazer a simulação no D7...
.
Não tem alguma mensagem q dá pra interceptar logo depois da simulação? Tipo, quando faço [CTRL + A] + [CTRL + C] em um arquivo .pdf gde, na parte inferior dele tem o bendido gaugezinho... será q dá pra interceptar ele?..
.
Bom, valeu pela força.... nem sonho como dá pra fazer isso... e pelo visto, poucos programadores se preocupam com isso....
.
abç.;
.
Bom, uso a procedure abaixo pra simular o pressionamento das teclas...
procedure TFLeitor.PostKeyEx32(Key: Word; const Shift: TShiftState; SpecialKey: boolean); type TShiftKeyInfo = Record shift: Byte; vkey : Byte; End; byteset = Set of 0..7; const ShiftKeys: array [1..3] of TShiftKeyInfo = ((shift: Ord(ssCtrl); vkey: VK_CONTROL ), (shift: Ord(ssShift); vkey: VK_SHIFT ), (shift: Ord(ssAlt); vkey: VK_MENU )); var Flag: DWORD; bShift: ByteSet absolute shift; i: Integer; begin for i := 1 to 3 do begin if shiftkeys[i].shift in bShift then Keybd_Event(ShiftKeys[i].vkey, MapVirtualKey(ShiftKeys[i].vkey, 0), 0, 0); end; // for if SpecialKey Then Flag := KEYEVENTF_EXTENDEDKEY else Flag := 0; Keybd_Event(Key, MapvirtualKey(Key, 0), Flag, 0); Flag := Flag or KEYEVENTF_KEYUP; Keybd_Event(Key, MapvirtualKey(Key, 0), Flag, 0); for i := 3 DownTo 1 do begin if ShiftKeys[i].shift in bShift then Keybd_Event(shiftkeys[i].vkey,MapVirtualKey(ShiftKeys[i].vkey, 0),KEYEVENTF_KEYUP, 0); end; // for end; // PostKeyEx32
A única forma q encontrei pra fazer a simulação no D7...
.
Não tem alguma mensagem q dá pra interceptar logo depois da simulação? Tipo, quando faço [CTRL + A] + [CTRL + C] em um arquivo .pdf gde, na parte inferior dele tem o bendido gaugezinho... será q dá pra interceptar ele?..
.
Bom, valeu pela força.... nem sonho como dá pra fazer isso... e pelo visto, poucos programadores se preocupam com isso....
.
abç.;
GOSTEI 0
Hudson Cardoso
24/11/2010
Olá, bom dia, conseguiu resolver seu problema ?
estou fazendo um software quw faz exatamente isso, meu unico problema é que nao estou encontrando o codigo da tecla C
estou fazendo um software quw faz exatamente isso, meu unico problema é que nao estou encontrando o codigo da tecla C
GOSTEI 0