Форум: "Начинающим";
Текущий архив: 2016.02.14;
Скачать: [xml.tar.bz2];
ВнизУдаление из TADOQuery записей Найти похожие ветки
← →
sanya_m (2014-07-17 22:27) [0]Привет, мастера!
Ситуация такая: есть TDBGrid в котором отображаются результаты SQL- запроса из TADOQuery.
Вопрос 1: Можно ли отключить добавление записей в этот TDBGrid по кнопке Insert, т.е. запретить?
Вопрос 2: как сделать чтобы при нажатии CTRL+Delete удалялись не только выбранная запись, но и определенная запись из другой таблицы или запроса?
Заранее спасибо!!!
← →
Cobalt © (2014-07-17 23:30) [1]1) Да. см свойства, что-то типа Options
2) см. события типа After/BeforeDelete
← →
sanya_m (2014-07-18 08:55) [2]в Options можно поставить "только чтение", но это мне не походит.
← →
эта пять (2014-07-18 10:12) [3]Можно ли отключить добавление записей в этот TDBGrid по кнопке Insert, т.е. запретить?
Можно.
Убрать кнопку инсерт, убрать обработчки кнопки инсерт, не убирать обработчик но ничего не делать в нем.
← →
sanya_m (2014-07-18 23:33) [4]
> Убрать кнопку инсерт, убрать обработчки кнопки инсерт
А как убрать кнопку Инсерт? Я не хочу ставить ловушки нажатий кнопок.
← →
Германн © (2014-07-19 01:52) [5]
> эта пять (18.07.14 10:12) [3]
>
> Можно ли отключить добавление записей в этот TDBGrid по
> кнопке Insert, т.е. запретить?
>
> Можно.
> Убрать кнопку инсерт
Предлагаешь выломать клавишу из клавиатуры?
> sanya_m (18.07.14 08:55) [2]
>
> в Options можно поставить "только чтение", но это мне не походит.
Тогда сложно.
← →
junglecat (2014-07-19 12:44) [6]> Вопрос 1: Можно ли отключить добавление записей в этот TDBGrid
> по кнопке Insert, т.е. запретить?
совсем запретить? OnBeforeInsert - Abort()
> Вопрос 2: как сделать чтобы при нажатии CTRL+Delete удалялись
> не только выбранная запись, но и определенная запись из
> другой таблицы или запроса?
OnAfterDelete
if (GetKeyState(VK_CONTROL) and $8000) <> 0) then
//удалить из другой таблицы
либо
OnKeyDown
if (Key = VK_DELETE) then begin
// удалить из основной
if (ssCtrl in ShiftState) then
// удалить из другой
end
← →
эта пять (2014-07-19 12:47) [7]Предлагаешь выломать клавишу из клавиатуры?
предлагаю вспомнить что у грида нет кнопки инсерт.
то есть она либо пользовательская, либо клавиатурная железная.
в первом случае смотрим выше, во втором тоже куча вариантов.
от revoke insert до триггеров instead
но автору это не поможет, потому что это все эти пункты для программиста.
а он
в Options можно поставить "только чтение", но это мне не походит.
← →
эта пять (2014-07-19 13:03) [8]Удалено модератором
← →
Inovet © (2014-07-19 13:09) [9]> [6] junglecat (19.07.14 12:44)
> OnBeforeInsert - Abort()
Cancel не мягче будет?
← →
icWasya © (2014-07-19 21:02) [10]to Inovet © (19.07.14 13:09) [9]
>> [6] junglecat (19.07.14 12:44)
>> OnBeforeInsert - Abort()
>Cancel не мягче будет?
Cancel - закроет форму
Abort() - прерывает работу текущего обработчика события.
← →
Inovet © (2014-07-20 07:28) [11]> [10] icWasya © (19.07.14 21:02)
> Cancel - закроет форму
TDataSet.Cancel
← →
MonoLife © (2014-07-22 09:46) [12]>Вопрос 1:
DBGrid.Options =>dgEditing=>false
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2016.02.14;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.002 c