глюки с DBGrid'ом
От: The Angry Angel  
Дата: 18.11.02 16:47
Оценка:
Доброго утра (дня, вечера, ночи) всем.

Пишу на VC++ приложение, в котором пользователь должен вводить/удалять/редактировать записи в БД.
Для доступа к самой БД (Access через ODBC) использую Microsoft RDO Data Control, а для отображения DBGrid. Сразу хочу сказать, что пробовал и оледэбэшный Microsoft ADO Data Control (Ver. 6.0) с не менее оледэбэшным Microsoft DataGrid Control (Ver 6.0) – результат тот же, а именно – неадекватное поведение грида. При добавлении полей (“Allow Add New” у грида стоит тру) единообразным способом (т.е. по нормальному, безо всяких ухищрений) происходит так называемый “Data Access Error”, о чем радостно сообщается каждый раз при попытке что-либо сделать. При многопотоковом редактировании записей (т.е. бешенный клик по всему гриду с не менее бешенным долблением по клавиатуре ) происходит либо тот же эррор с дата аксесом, либо еще более интересное сообщение о невозможности одновременного апдейта множественной выборки (Could not update multiple selection). И напоследок – при нажатии эскейпа грид самым элегантным образом убирается с экрана, заставляя тем самым проваливаться многочисленные ассерты дебаг версии. Еще есть глюк при отображении пустой (и только пустой) таблицы – записи добавляются, но в гриде не отображаются. Однако это решается добавление в пустую таблицу пустую же запись. Это конечно не всё, но уже вполне достаточно.
Надо заметить, что все эти глюки встраиваются по умолчанию и не требуют от программиста ни единой строчки кода. Более того, последовательность действий была согласована с книгой издательства Microsoft Press – Desktop Applications with VC++ (Русская редакция), которая на 100% коррелирует с MSDN.
Вопросы стандартные – кто виноват (любимый ахсекс, его ODBC драйвер, дата контрол, сам грид или А.С. Пушкин) и что делать?

Заранее благодарен, The Angry Angel.
Re: глюки с DBGrid'ом
От: LaFlour Австралия blog: http://spaces.live.com/laflour
Дата: 19.11.02 07:02
Оценка:
Здравствуйте, The Angry Angel, Вы писали:


TAA> Вопросы стандартные – кто виноват (любимый ахсекс, его ODBC драйвер, дата контрол, сам грид или А.С. Пушкин) и что делать?


Попробуй использовать MSFlexGrid
Re[2]: глюки с DBGrid'ом
От: The Angry Angel  
Дата: 19.11.02 09:41
Оценка:
Здравствуйте, LaFlour, Вы писали:



TAA>> Вопросы стандартные – кто виноват (любимый ахсекс, его ODBC драйвер, дата контрол, сам грид или А.С. Пушкин) и что делать?


LF>Попробуй использовать MSFlexGrid


Пробовал и MSFlexGrid и Hierararchical FlexGrid. Не подходят.
Насколько я понял MSFlexGrid не позволяет добавлять/редактировать/удалять записи. Конечно можно сделать эти функции и на кнопочках, или еще как нибудь, но боюсь, что препод, программирующий на дельфи, этого не поймет
Re[3]: глюки с DBGrid'ом
От: LaFlour Австралия blog: http://spaces.live.com/laflour
Дата: 19.11.02 13:21
Оценка: 2 (1)
Здравствуйте, The Angry Angel, Вы писали:

TAA>Пробовал и MSFlexGrid и Hierararchical FlexGrid. Не подходят.

TAA>Насколько я понял MSFlexGrid не позволяет добавлять/редактировать/удалять записи. Конечно можно сделать эти функции и на кнопочках, или еще как нибудь, но боюсь, что препод, программирующий на дельфи, этого не поймет

Блин, чето я глючу, 2 сообщение отправил и все криво. Итак есть 3 способа:
1) Тебе MSFlexGrid ниче не напоминает? Юзай грид как стандартных контрол
2) Юзай HTML таблицу, и пихай данные туда. Препод на дельфях 100% такого раньше не видел
3) Юзать этот грид (45Кб) незабыв сказать спасибо мне
и автору.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.