Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Запретит для VK_DOWN метода Append / 14 сообщений из 14, страница 1 из 1
08.04.2005, 13:42
    #33004847
SCORPION Z
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Как запретить автодобавление записи в таблицу
при нажатии стрелки вниз на компоненте DBGrid?
...
Рейтинг: 0 / 0
08.04.2005, 17:29
    #33005714
Lelikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Обработчик OnKeyDown:
Если запись последняя -- не передавать код клавиши.
________________________________________________________
Глюк - это высокоорганизованная система не поддающихся определению частиц
...
Рейтинг: 0 / 0
08.04.2005, 19:41
    #33005929
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Ага, а если я мышкой нажму ?
...
Рейтинг: 0 / 0
08.04.2005, 20:21
    #33005978
Lelikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
MasterZivАга, а если я мышкой нажму ?

Мышу отрезать и выбросить нафиг


2 SCORPIONZ: лучше заюзать что-нибудь более продвинутое, вроде ehGrid, там уже решены такие проблемы.
...
Рейтинг: 0 / 0
08.04.2005, 22:29
    #33006105
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Лучше уж тады сразу комп выключить.
...
Рейтинг: 0 / 0
10.04.2005, 11:28
    #33006752
SCORPION Z
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Lelikk Я взял себе библиотеку EhLib и уже работаю с DBGridEh, но я
не знаю, как это (отменить Append) сделать в этом компоненте?
А на счет
Код: plaintext
1.
Обработчик OnKeyDown:
Если запись последняя -- не передавать код клавиши.
Попробуй сам! Так не получится. Ведь проверить можно только
Table1->Eof(); а на последней записи он ещё не наступает.
Поэтому когда я пишу

Код: plaintext
if ((Key == VK_DOWN)&&(Table1->Eof())) Key='\0';  

то Append все равно происходит. Скажем так "последняя" запись
и "конец" таблицы (который происходит за последней записью)
НЕ ОДНО И ТО ЖЕ ! По другому определять последнюю запись я не умею.
...
Рейтинг: 0 / 0
10.04.2005, 12:16
    #33006769
Lelikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Под рукой нет Delphi, поэтому не могу точно сказать, но свойсва кажется в начале, относятся к тому, какие операции пользователь может выполнять: Append, Edit, Delete.

А последняя запись можно проверить, как
Код: plaintext
Table1->RecNo == Table1->RecordCount

________________________________________________________
Глюк - это высокоорганизованная система не поддающихся определению частиц
...
Рейтинг: 0 / 0
10.04.2005, 14:55
    #33006847
SCORPION Z
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
авторА последняя запись можно проверить, как
Table1->RecNo == Table1->RecordCount

Тут ты не прав, а если Table1 фильтрован?
Думаешь RecordCount будет тем же?
...
Рейтинг: 0 / 0
10.04.2005, 22:05
    #33007157
Lelikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
SCORPION Z авторА последняя запись можно проверить, как
Table1->RecNo == Table1->RecordCount

Тут ты не прав, а если Table1 фильтрован?
Думаешь RecordCount будет тем же?

Насчет фильтрации не подумал )))
...
Рейтинг: 0 / 0
11.04.2005, 07:55
    #33007291
Lelikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Еще вот могу предложить:

Код: plaintext
1.
2.
3.
4.
5.
Table1->DisableControls();
Table1->Next();
if (Table1->Eof()) Key = '\0';
Table1->Back();
Table1->EnableControls();
________________________________________________________
Глюк - это высокоорганизованная система не поддающихся определению частиц
...
Рейтинг: 0 / 0
11.04.2005, 18:09
    #33009128
SCORPION Z
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Чего не подумал залокировать Table1
Table1->DisableControls();
проверить конец, а затем отпустить.
Может это и есть оптимальное решение.
...
Рейтинг: 0 / 0
12.04.2005, 10:47
    #33010030
SCORPION Z
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Нашел! DBGridEh имеет свойство AllowedOptions, которое запрещает/разрешает
Insert,Append,Edit,Updates.

Одно только "неудобство", которое я так и не решил - это
при скролировании влево или при редактировании ячейки, проскакивают
вертикальные линии в многострочном загаловке DBGridEh. Проскакивают они только для тех столбцов, у которых заголовок колонки многострочный, т.е.
в тех местах где в обычном DBGrid была бы линия загаловка колонки.
Может это глюки компонента DBGridEh?
...
Рейтинг: 0 / 0
12.04.2005, 18:02
    #33011619
Lelikk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
SCORPION ZНашел! DBGridEh имеет свойство AllowedOptions, которое запрещает/разрешает
Insert,Append,Edit,Updates.

Одно только "неудобство", которое я так и не решил - это
при скролировании влево или при редактировании ячейки, проскакивают
вертикальные линии в многострочном загаловке DBGridEh. Проскакивают они только для тех столбцов, у которых заголовок колонки многострочный, т.е.
в тех местах где в обычном DBGrid была бы линия загаловка колонки.
Может это глюки компонента DBGridEh?

Если всякие графические эффекты, то это DbGridEh глючит.
...
Рейтинг: 0 / 0
12.04.2005, 18:40
    #33011745
SCORPION Z
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запретит для VK_DOWN метода Append
Угу
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Запретит для VK_DOWN метода Append / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]