Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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
15-1433494059
Pavelnk
2015-06-05 11:47
2016.02.14
Юридический вопрос


2-1406801514
lewka_s
2014-07-31 14:11
2016.02.14
Формат времени в TDateTimePicker


2-1406470466
p
2014-07-27 18:14
2016.02.14
Перевести на С


2-1406884783
Сергей
2014-08-01 13:19
2016.02.14
Не отображаются кнопка на панели mdi child формы


2-1406532286
Dmitry
2014-07-28 11:24
2016.02.14
Как в QuickReport открить отчет для просмта сразу в Preview





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