Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Как в DBGrid запретить нажатие Insert?   Найти похожие ветки 

 
Имя2   (2004-04-01 10:01) [0]

Как сделать, чтобы при нажатии на Insert в DBGrid новая запись не добавлялась и при этом ReadOnly=false?


 
NoName   (2004-04-01 10:06) [1]

на OnAfterInsert написать Table.Cancel


 
Представитель   (2004-04-01 10:07) [2]

Поставить в DBGrid.ReadOnly=true


 
Ozone ©   (2004-04-01 10:08) [3]

В принципе согласен с [1], но вопрос возник - если у нас первичный ключ есть автоинкрементное поле, то не будет ли расти этот счетчик с каждым нажатием кнопки "Insert"?


 
NoName   (2004-04-01 10:09) [4]

будет


 
Ozone ©   (2004-04-01 16:48) [5]

И это не есть хорошо... как мне кажется


 
имя   (2004-04-01 17:33) [6]

Удалено модератором


 
Vemer ©   (2004-04-02 09:41) [7]

Abort в обработчик BeforeInsert датасета + проверку на условаия к нему если надо. Insert не возникает, генератор не дергаеться.


 
Anatoly Podgoretsky ©   (2004-04-02 10:06) [8]

Ozone ©   (01.04.04 10:08) [3]
Будет, кроме того уже поздно что било отменять после AFTER


 
Vlad ©   (2004-04-02 10:22) [9]

на событие OnKeyDown грида:
if Key=VK_INSERT then Key:=0;


 
Yad   (2004-04-02 10:32) [10]

в OnBeforeInsert поставить Abort


 
Vlad ©   (2004-04-02 10:34) [11]


> Yad   (02.04.04 10:32) [10]

Сказано в DBGrid убрать реакцию на клавишу Insert, а ты предлагаешь вобще запретить вставку в DataSet


 
Yad   (2004-04-02 10:42) [12]

А что мешает сделать пременную InsertEnable
и проверять OnBeforeInsert:
 if InsertEnable then InsertEnable := false else Abort;


 
Vlad ©   (2004-04-02 10:46) [13]


> Yad   (02.04.04 10:42) [12]

Ничто не мешает.
А где и как будет устанавливаться флаг InsertEnable ?
Часом не на том же событии грида OnKeyDown ? ;-)
Так может проще все-таки [9] ? :-)


 
Yad   (2004-04-02 11:09) [14]

> А где и как будет устанавливаться флаг InsertEnable
а где хочешь, там и будет устанавливаться.
а твоя [9] не спасёт от добавления новой при нажатии стрелки <вниз> на последней строке


 
Vlad ©   (2004-04-02 11:14) [15]


> а где хочешь, там и будет устанавливаться.

хм.. хороший ответ :-) Толку правда от него никакого.


> а твоя [9] не спасёт от добавления новой при нажатии стрелки
> <вниз>

А где в посте автора было сказано что нужно убрать реакцию на "стрелку вниз" ? По-моему речь шла только о клавише Insert, если я ничего не упустил.


 
KSergey ©   (2004-04-02 13:04) [16]

А где при этом было сказано, что надо оставить возможность вставки в DataSet? про это тоже не было. Уж если хотите формально - так будьте последовательны до конца.


 
Anatoly Podgoretsky ©   (2004-04-02 13:17) [17]

Нигде не шла речь про возможность или запрет, про стрелку вниз, так что не надо к этому цепляться, речь только про клавишу Insert. Возможно он просто не знает про другие варианты, а может другие варианты не волнуют, ну мало ли что.


 
Anatoly Podgoretsky ©   (2004-04-02 13:18) [18]

А уж если строго смотреть, то в теме о запрете нажатия клавиши, а в вопросе про отсутствие реакции.


 
Stas ©   (2004-04-09 15:29) [19]

Dbgrideh - там можно отключить.



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

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.126 c
14-1082174736
dosik
2004-04-17 08:05
2004.04.11
ATI Radeon 9600XT для Linux


7-1076167977
Ландграф Павел
2004-02-07 18:32
2004.04.11
Как добавить кнопочку в системное меню программы


3-1081776206
Addon
2004-04-12 17:23
2004.04.11
Как организовать взаимодействие проги с Инетовской БД?


4-1078858366
TankMan
2004-03-09 21:52
2004.04.11
Как закрасить MainMenu?


1-1079872850
MAXH0
2004-03-21 15:40
2004.04.11
Закачка файлов с интернета.