Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];

Вниз

Помогите решить проблему   Найти похожие ветки 

 
Andrews   (2002-01-24 12:08) [0]

Привет всем!

Есть такой фрагмент кода

procedure TMainForm.FormShow(Sender: TObject);
var
CDBEditorIni : TIniFile;
begin
MainForm.DBGrid1.Options := MainForm.DBGrid1.Options + [dgColumnResize];
MainForm.StatusBar1.Panels[3].Text := "Фильтр : НЕТ";
Problems := FALSE;
try
MainForm.Table2.Open;
MainForm.Table1.Open;
except
MessageBox(Application.Handle, PChar("Не могу открыть одну из баз! Пожалуйста, проверьте настройки пути."), AppTitle, mb_OK + mb_SetForeground + mb_IconError);
Problems := TRUE;
OptForm.ShowModal;
end;


Суть проблемы

OptForm содержит компонент Edit, так вот при срабатывании приведенного выше эксепшена, когда OPTFORM отображается до появления главной формы, в поле Edit`e начинаю срабатывать все горячии клавиши главного меню(Например: Ctrl+C не вставляет текст из буфера, а вызывает еще одну модальную форму и т.п.),
когда же OPTFORM вызывается уже из меню главной формы все нормально.

Вопрос: как на время заблокировать реакцию на горячии клавиши?

Спасибо всем.

P.S. Вариант присвоения горячих клавиш в Run-time после отработки указанной части программы решает проблемму, но хотелось бы чего-нибудь поиязящней :o)



 
DMN   (2002-01-24 12:16) [1]

type
TMainForm = class(TForm)
private
procedure WMUSER(var Message:TMessage); message WM_USER;
//........................................................
end;


procedure TMainForm.FormShow(Sender: TObject);
begin
//..................................
PostMessage(Handle,WM_USER,0,0);
end;

procedure TMainForm.WMUser;
begin
OptForm.ShowModal;
end;



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
1-18851
DJ X
2002-01-16 16:36
2002.02.07
From...


1-18856
avr555
2002-01-22 17:02
2002.02.07
Вызвать событие


3-18743
Malyatko
2002-01-10 17:26
2002.02.07
SQL


1-18923
LamerMen
2002-01-24 09:56
2002.02.07
Что использовать TMemo TR..Edit?


7-19008
Poroh
2001-10-24 02:57
2002.02.07
Подскажите, пожалуйста, как перехватить сообщение о том, что программа выполнила недопустимую операцию и будет закрыта.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский