Casa
Top.Mail.Ru Yandeks.Metrika
Fórum: "Principal";
Arquivo atual: 2002.01.08;
Download: [xml.tar.bz2];

Para baixo

Como fazer o TEdit não gerar um bipe quando o manipulador de pressionamento de tecla está ativado. Encontre agências semelhantes


voronkov   (2001-12-18 12:27) [0]

Eu cansei dessa trabl e não sei lutar. No TEdit, eu uso o manipulador de pressionamentos de tecla OnKeyDown. Eu pego as teclas digitadas como Enter, Escape e outras. Depois de pressionar essas teclas, um bipe é emitido. Se houver uma placa de som, o sinal do esquema de som definido, se não, o alto-falante do computador funciona. Usuários uivam, eu sento com eles, uivo também. Escalar dentro de computadores e cortar os alto-falantes parece-me antiesportivo. Como atropelar isso?



Anatoly Podgoretsky   (2001-12-18 12:34) [1]

Key:=#0



Anatoly Podgoretsky   (2001-12-18 12:36) [2]

Извини ошибка, думал об OnKeyPress



Виктор Щербаков   (2001-12-18 12:42) [3]

А как быть с OnKeyDown? Недавно была такая же проблема.
Пришлось использовать RichEdit.



Владислав   (2001-12-18 12:58) [4]

Так какие проблемы?
Нужно добавить OnKeyPress и Key:=#0;



Teacher   (2001-12-18 13:02) [5]

Обрабатываю OnKeyUp, ничего не делаю кроме присвоения #0 при получении кодов, обрабатываемых в OnKeyDown.



Виктор Щербаков   (2001-12-18 13:04) [6]

to Владислав ©
Из хэлпа:
Keys that don"t correspond to an ASCII Char value (Shift or F1, for example) don"t generate an OnKeyPress event.



Владислав   (2001-12-18 13:06) [7]

> © Victor Shcherbakov (18.12.01 13: 04)

Да, но они, слава богу, и не "пищат".



Виктор Щербаков   (2001-12-18 13:09) [8]

Попробуй Ctrl + S например :)



Владислав   (2001-12-18 13:19) [9]

> © Victor Shcherbakov (18.12.01 13: 09)

Не "пищит", однако?

Еще что-нибудь придумаешь?

:)))



voronkov   (2001-12-18 13:19) [10]

Пробовал вставлять в OnKeyUp key := 0, проблема осталась. Ну елы-палы, что типа делать?



Dmitriy(new)   (2001-12-18 14:29) [11]

TMyEdit= class(TEdit)
...
procedure KeyPress(var Key: Char); override;
...
End;

procedure TMyEdit.KeyPress(var Key: Char);
começar
chave do caso de
#1..#12,#14..#26,#28..#255:;
outra chave: = # 0;
End;
End;


и не "пищат".



cdaDmitriy   (2001-12-18 15:22) [12]

work ?



panov   (2001-12-18 15:26) [13]

Попробуй вот так:
procedure TfDocEdit.FormKeyPress(Sender: TObject; var Key: Char);
começar
if (Key = #27) then
começar
Chave: = # 0;
if (fDocEdit.ActiveControl is TEdit) then
começar
TEdit(fDocEdit.ActiveControl).Text := vPrevValue;
TEdit(fDocEdit.ActiveControl).Modified := False;
end;
end;
if (Key = #13) then
começar
Chave: = # 0;
Perform(WM_NEXTDLGCTL,0,0);
end;
end;



panov   (2001-12-18 15:27) [14]

И не забудь выставить
TfDocEdit.KeyPreview := True;



cdaDmitriy   (2001-12-18 15:32) [15]

>> panov ©
забыл KeyPreview:=true;
и вопрос что ты будешь делать если на форме /проекте 10 ..n TEdit ?

забыл ООП



voronkov   (2001-12-18 16:06) [16]

Чуваки, всем спасибо. Не пищит комбинация с
chave do caso de
#13: begin
...
end;
outra chave: = # 0;
End;
в OnKeyPress, правда немного непривычно работать с этим событием, так как привык работать с константами типа VK_...
К сожалению я пишу программу с большим объемом ручного ввода и зачастую разные TEdit должны по разному реагировать на одни и теже клавиши, в противном случае можно пользоваться событиями формы. Так что ООП тут не спасает отца русской демократии.



panov   (2001-12-18 16:12) [17]

>cdaDmitriy © (18.12.01 15:32)
Каждому прописываешь имя этого обработчика.



cdaDmitriy   (2001-12-18 16:15) [18]

> panov © забыл ООП
делаешь новый компонент ( T..Edit ) один раз

procedure KeyPress(var Key: Char); override;

и его используешь



Страницы: 1 filial inteira

Fórum: "Principal";
Arquivo atual: 2002.01.08;
Download: [xml.tar.bz2];

em cima









Memória: 0.87 MB
Hora: 0.047 c
1-22115
Derzky
2001-12-19 18:14
2002.01.08
Como comparar datas e a diferença entre elas obter Integer


1-22010
dorixe
2001-12-17 19:21
2002.01.08
treeview no dblclick


6-22275
Moscower
2001-10-08 12:43
2002.01.08
Como posso enviar um comando chmod para um servidor Linux via TNMFTP?


3-21918
SVS
2001-12-04 13:11
2002.01.08
preenchendo OleContainer de BlobField


3-21906
Yuri Zhukov
2001-11-21 09:40
2002.01.08
Oracle ADO vs DOA - fido7.ru.delphi.db





afrikaans albanês Arabic armênio azerbaijano basco belarusian Bulgarian catalão Chinês simplificado) Chinês tradicional) croata checo dinamarquês Dutch Inglês estoniano filipino Finnish French
Galego georgiano German grego crioulo haitiano hebraico hindi húngaro islandês Indonesian irlandês Italian Japanese Korean letão lituano macedónio Malay maltês Norwegian
persa polonês Portuguese romeno Russa sérvio Slovak esloveno espanhol swahili sueco tailandês turco ucraniano urdu vietnamita galês ídiche bengali bósnio
cebuano esperanto gujarati hausa hmong igbo javanês kannada khmer lao latino maori marata mongol Nepali punjabi somali tâmil telugu yoruba
zulu
Английский francês Alemão Italiano Португальский russo Espanhol