Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / textedit / 4 сообщений из 4, страница 1 из 1
20.01.2011, 19:13
    #37070024
Dima123123123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
textedit
Скажите пожалуйста, как можно активировать textedit если он выкинуть на форму ,созданную через мастера форм - он не работает(т.е. нельзя ввести в него текст), а если создать руками - пашет! В чем загвоздка?
...
Рейтинг: 0 / 0
20.01.2011, 19:18
    #37070036
textedit
Dima123123123Скажите пожалуйста, как можно активировать textedit если он выкинуть на форму ,созданную через мастера форм - он не работает(т.е. нельзя ввести в него текст), а если создать руками - пашет! В чем загвоздка?Положенный мастером привязан к недоступному полю. Полженный руками ни к чему не привязан.
...
Рейтинг: 0 / 0
20.01.2011, 19:34
    #37070065
Dima123123123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
textedit
Как исправить?
...
Рейтинг: 0 / 0
20.01.2011, 22:39
    #37070314
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
textedit
Поле может быть недоступно для редактирования, если указатель записи той таблицы, поле которой он отображает, находится в положении EOF()=.T. или в ней вообще нет записей. Нечего редактировать.

Исправить-то просто, только придется писать довольно много "букв", чтобы объяснить Вам элементарные вещи.

Ну, вкратце, почти у каждого объекта FoxPro есть такое свойство ControlSource. Если это свойство не пустое, то при инициализации объекта его содержимое будет взято из того, что указано в ControlSource, а после изменения значения туда же и положено. Как правило, в этом свойстве указывают поле таблицы.

Таблица имеет записи (строки) и поля (столбцы). TextBox, естественно, отображает содержимое указанного поля, но текущей записи . Следовательно, критически важным становится позиционирование на нужную запись. Т.е. указатель записи таблицы-источника всегда должен стоять там, где нам нужно. На нужной записи (строке).

Особая ситуация возникает, если в таблице вообще нет записей или же указатель записи загнали "за последнюю запись". В положение EOF() = .T. В этом случае FoxPro считает, что указатель записи находится на специальной "фиктивной" записи все поля которой имеют пустое значение (не NULL, а именно пустое).

Однако поскольку эта запись все-таки "не настоящая", то и изменять ее содержимое нельзя. Можно сказать, что эта строка имеет статус Read-Only. Как следствие, и объекты, отображающие ее содержимое, становятся недоступными для редактирования.

Соответственно, лечение зависит от причины. Если записей нет, то ее надо создать (APPEND BLANK), а если записи есть, просто указатель стоит на "фиктивной" записи, то достаточно перевести указатель записи на реальную строку.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / textedit / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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