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

Вниз

Событие перед вводом   Найти похожие ветки 

 
DelphiLexx ©   (2007-04-25 18:46) [0]

У меня есть TFIBDataSet связанный через DataSource c DBGridEh"ом. Меня интересует следующее: Какое возникает событие у DataSet"a или DBGridEh"a при попытке ввести значение в ячейку т.е. до момента когда в ячейке появится курсор ввода.


 
Виталий Панасенко(дом)   (2007-04-25 19:22) [1]

а что в этот момент происходит ? по моему, ничего... вот, когда начинаешь набирать что-то на клаве, НД переходит в режим dsEdit и возникает событие BeforeEdit... "огласите весь список, пожалуйста...".. внятней


 
DelphiLexx ©   (2007-04-25 19:28) [2]


> а что в этот момент происходит ?

Появляется курсор в ячейке, а мне это не нужно


 
Виталий Панасенко(дом)   (2007-04-25 19:45) [3]

Вообще-то, у ГРИДА(и не только :-)) ) есть событие OnEnter(НаВход)... Выруби курсор тут, что мешает


 
DelphiLexx ©   (2007-04-26 09:11) [4]


> Вообще-то, у ГРИДА(и не только :-)) ) есть событие OnEnter(НаВход).
> .. Выруби курсор тут, что мешает

Но ведь OnEnter возникает не когда я перемещаюсь по ячейкам, а всего лишь один раз, когда я устанавливаю фокус с какого контрола на грид


 
ЮЮ ©   (2007-04-26 10:46) [5]

У TDBGrida представлено немного событий, ибо считаетися, что всё что нужно, уже реализовано:
OnCellClick
OnColEnter
OnColExit
OnColumnMoved
OnDrawColumnCell
OnDrawDataCell
OnEditButtonClick
OnTitleClick

Если вопрс связан с
http://delphimaster.net/view/3-1177508561/
и ты считаешь, что данный код замедляет скроллирование в гриде (именно в гриде. При программном сколлинге такой обработчик следует обnillять):

procedure TCustomDBGrid.SetOptions(Value: TDBGridOptions);
const
 LayoutOptions = [dgEditing, dgAlwaysShowEditor, dgTitles, dgIndicator,
   dgColLines, dgRowLines, dgRowSelect, dgAlwaysShowSelection];
var
 NewGridOptions: TGridOptions;
 ChangedOptions: TDBGridOptions;
begin
 if FOptions <> Value then
 begin
   NewGridOptions := [];
   if dgColLines in Value then
     NewGridOptions := NewGridOptions + [goFixedVertLine, goVertLine];
   if dgRowLines in Value then
     NewGridOptions := NewGridOptions + [goFixedHorzLine, goHorzLine];
   if dgColumnResize in Value then
     NewGridOptions := NewGridOptions + [goColSizing, goColMoving];
   if dgTabs in Value then Include(NewGridOptions, goTabs);
   if dgRowSelect in Value then
   begin
     Include(NewGridOptions, goRowSelect);
     Exclude(Value, dgAlwaysShowEditor);
     Exclude(Value, dgEditing);
   end;
   if dgEditing in Value then Include(NewGridOptions, goEditing);
   if dgAlwaysShowEditor in Value then Include(NewGridOptions, goAlwaysShowEditor);
   inherited Options := NewGridOptions;
   if dgMultiSelect in (FOptions - Value) then FBookmarks.Clear;
   ChangedOptions := (FOptions + Value) - (FOptions * Value);
   FOptions := Value;
   if ChangedOptions * LayoutOptions <> [] then LayoutChanged;
 end;
end;

Неужели без этого обработчика тормозов нет, а с ним - есть?
Попробуй менять ReadOnly (у Grida или DataSet-а).


 
MsGuns ©   (2007-04-27 21:55) [6]

Нифига не понял: надо запретить редактирование некоторых полей или "не пущать" туда курсор ?


 
DelphiLexx ©   (2007-04-28 09:42) [7]


> "не пущать" туда курсор

"не пущать" туда курсор это и есть блокирование редактрования


 
ЮЮ ©   (2007-04-28 10:13) [8]

> "не пущать" туда курсор это и есть блокирование редактрования

А вдруг ты вошел не для редактирования, а для взятия в буфер содержимого ячейки? А редактирование набора данных происходит при выходе курсора из ячейки. А попытка изменения - при изменении в InpaceEdit-е.


 
Виталий Панасенко(дом)   (2007-04-28 10:22) [9]


> DelphiLexx ©   (28.04.07 09:42) [7]
>
>
> > "не пущать" туда курсор
>
> "не пущать" туда курсор это и есть блокирование редактрования

Можно просто поле сделать Read-Only. и не парить то, что на Пасху красят



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

Форум: "Базы";
Текущий архив: 2007.08.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.041 c
15-1184329922
>>DEATH<<
2007-07-13 16:32
2007.08.12
работа с модемом


4-1172489276
MEV
2007-02-26 14:27
2007.08.12
дамп памяти процесса


8-1162985232
OlDirtyBastard
2006-11-08 14:27
2007.08.12
Label над точками в TChart


15-1184662508
boriskb
2007-07-17 12:55
2007.08.12
А ты годишься в учителя новейшей истории?


2-1184297161
Riply
2007-07-13 07:26
2007.08.12
Объявление структур по-русски :)





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский