![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| creative |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 24.1.2006 Репутация: нет Всего: нет |
В обработчике StringGrid`а onDoubleClick заложены две процедуры:
1. если строка, на которой стоит курсор, пустая, то открывается маленькая форма с полями ввода и при их заполнении и нажатии ОК, создается объект класса TThing (например), его поля отображаются с соотв. ячейках таблицы и еще - в текущую строку таблицы добавляется ссылка на этот объект: Form1.MyGrid.Objects[0, row]:=NewThing; 2. если строка уже заполнена, то при Double Click`е тоже открыватся форма, но она уже содержит значения полей объекта, связанного с этой строчкой. Предполагается, что если эти значения изменить и нажать ОК, то они обновятся в таблице. обращение к объекты происходит следующим образом: with TThing(Form1.MyGrid.Objects[0, row]) do begin ... end; Но на этой строке программа вылетает. Уточнение: если написать в чистом виде Form1.MyGrid.Objects[0, row] программа даже не скомпилится, написав, что row - ubdeclared identifier Если изголиться и написать var a: integer; .......... Form1.MyGrid.Objects[0, a] то компилятор это проглотит, но при повторном обращении к объекту (при редактировании) программа вылетит. Отладчик показывает, что TThing(Form1.MyGrid.Objects[0, row]) = nil, то есть при создании объекта никакая ссылка на него с строку не добавилась. Объясните почему? Что я делаю неправильно? |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 15 Всего: 98 |
row -- Это свойство сетки а ты к нему пытаешся обратится без указаеия объекта
нужно так: Form1.MyGrid.Objects[0, MyGrid.row] писать -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| creative |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 24.1.2006 Репутация: нет Всего: нет |
Спасибо за совет насчет row. Проблема все таки оказалась в другом, но это тоже новая и ценная информация. Спасибо. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |