Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Есть проблема / 9 сообщений из 9, страница 1 из 1
24.07.2006, 15:45
    #33874269
air1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема
Есть грид, куда пользователь вносит данные и по нажатию кнопки введенные данные должны добавляться к таблице. Все это уже написано, но для удобства ввода пользователь просит написать следующую функцию: Если в предыдущей строчке по той же колонке, та же цифра как и должна быть в новой еще не заполненной строчке, то по нажатию "+" в этой же колонке но строчкой ниже Эта цифра должна появиться в той же колонке только соответственно в новой не заполненной строчке.
...
Рейтинг: 0 / 0
24.07.2006, 15:48
    #33874282
alex11100
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема
если добавляете appe blan, то
set carry to ... поможет
...
Рейтинг: 0 / 0
24.07.2006, 16:02
    #33874336
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема
Отслеживаете KeyPress в форме и THISFORM.ActiveControl.Name = "MYGRID"
Код должен перехватывать нажатие на клавишу "+" на объекте MyGRID и проверять на EMPTY() требуемое поле в источнике данных GRID.
KeyPress: (форма)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
LPARAMETERS m.nkeycode, m.nshiftaltctrl
LOCAL m.lcName

m.lcName = IIF(TYPE("THISFORM.ActiveControl") == "O", UPPER(THISFORM.ActiveControl.Name), "")

DO CASE
	CASE m.nkeycode =  43  AND m.nshiftaltctrl =  1  AND m.lcName== "MYGRID'
*-- Тут код который должен обновлять запись в таблице (курсоре) - источнике данных для вашего GRIDа
*-- Проверяете, что поле треб. пустое (EMPTY())
*-- Если пустое, то переходите на пред. строку (SKIP -1)
*-- Запоминаете значение поля в локальную переменную
*-- Переходите на треб. запись (SKIP или GOTO ...)
*-- Обновите запись значением локальной переменной (REPLACE ...)
*-- Обновите форму (THISFORM.Refresh())

С уважением, Алексей
...
Рейтинг: 0 / 0
25.07.2006, 00:42
    #33875305
Лузир
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема
А куда же ты дел настройку KeyPreview ? Или это ты типа нам неразумным урок даешь ?
...
Рейтинг: 0 / 0
25.07.2006, 08:04
    #33875407
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема
ЛузирА куда же ты дел настройку KeyPreview ? Или это ты типа нам неразумным урок даешь ?
А вы кому вопрос задаете?
Если мне, то я полагаю, что автор вопроса знает, что это свойство, как правило, включают в .T. И причем ту урок и тем более, вам. Вопрос был задан air1 и я ему отвечал. Если у вас есть другой вариант решения его проблемы, то предложите. К чему тут ирония. На форуме никто никого не учит и не лечит. Кто-то спрашивает, а кто-то отвечает.
С уважением, Алексей.
...
Рейтинг: 0 / 0
25.07.2006, 12:13
    #33876233
air1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема
Большое спасибо Aleksey-K. Все получилось. А что касается Лузира могу сказать, что форум для того и существует, чтоб задавать вопросы и получать на них достойные ответы. А если ответа не знаешь, то лучше вообще не писать. Мне кажеться что ты потратил гораздо больше времени на написание своего ироничного ответа, чем Aleksey-K абсолютно для написания правильного.
...
Рейтинг: 0 / 0
25.07.2006, 12:33
    #33876323
air1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема
Еще один вопрос: Как по нажатию кнопки, ну к примеру "+" скакнуть сразу на следующую колонку грида?
...
Рейтинг: 0 / 0
25.07.2006, 12:52
    #33876423
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема
в код от Aleksey-K добавляем
thisform.MYGRID.Column2.setfocus
или при необходимости thisform.MYGRID.Column2.Text1.setfocus
...
Рейтинг: 0 / 0
25.07.2006, 20:14
    #33878022
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть проблема
air1Еще один вопрос: Как по нажатию кнопки, ну к примеру "+" скакнуть сразу на следующую колонку грида?
Можно, например так KEYBOARD '{TAB}'
С уважением, Алексей.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Есть проблема / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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