Главная страница
    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.47 MB
Время: 0.045 c
9-1157611526
Kobik.
2006-09-07 10:45
2007.08.12
Z-Буфер и полноэкранный режим


15-1184214406
Riply
2007-07-12 08:26
2007.08.12
Владпута, Едрос.


6-1166522728
djon silver
2006-12-19 13:05
2007.08.12
HTTP Server


2-1184326468
Квэнди
2007-07-13 15:34
2007.08.12
MediaPlayer и TCPServer


11-1167225125
mixail_shar
2006-12-27 16:12
2007.08.12
функция NewKOLStrList KOL





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