Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.08.22;
Скачать: [xml.tar.bz2];

Вниз

Копирование   Найти похожие ветки 

 
vib   (2002-07-31 22:10) [0]

Подскажите как скопировать значение поля в DBGrid которое находиться
выше текущего. Тоисть находясь в каком-то поле DBGrid я хочу скопировать
в него значение того-же поля но предыдущей записи (Ctrl D - в PARADOX).
В общем проблема сводится к чтению значения поля не устанавливая в эту
строку указателя. Заранее благодарен, Володя.
vib@softhome.net

Jeer © (28.07.02 16:43) Не создавай себе проблем.
DisableControls; Prior; читаем ; Next; присваиваем; Post; EnableControls;

Да но если я стою в пустой строке (копирую первое поле) то при уходе с этой строки она исчезнет (а копирование произойдет не туда куда надо), дальше если я заполнил индексное поле а потом таким образом копирую следующее произойдет сортировка (опять копируем не туда ), или если есть поля обязательные для заполнения?


 
Jeer   (2002-07-31 22:51) [1]

Ок. Будем последовательны и идем дальше.
1.Что значит пустая строка.
2.Куда она исчезнет.
Думаю эти проблемы связаны с недопониманием статуса TDataSet:
вставка, редактирование..Разумеется, находясь в этих режимах двигать курсор уже нельзя.
3.Если Вы заполнили индексное поле но не сделали Post никакой сортировки и не произойдет.
4.Если есть обязательные поля - заполняйте.

Лучше всего конечно переопределить OnNewRecord в наследнике от TTable
Что-то вроде
procedure TMy.DoOnNewRecord;
var
RecBuf: PChar;
begin
if FCopyOnAppend then
begin
UpdateCursorPos;
if GetActiveRecBuf(RecBuf) then
FHandle.CloneCurrentRecord(RecBuf);
end;
inherited DoOnNewRecord;
end;

Если такими вещами тяжело заниматься, то можно задействовать события OnBeforeScroll и копировать текущую запись в буфер, а на OnNewRecord заполнять из него.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.08.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
1-71239
eruc
2002-08-11 18:28
2002.08.22
вопрос про (........)


1-71110
kull
2002-08-12 18:58
2002.08.22
Перхват вызова функций DLL?


14-71360
Mystic
2002-07-28 01:19
2002.08.22
Попугай


3-71031
Kit
2002-08-01 13:06
2002.08.22
Клиентское приложение


3-71026
NDR
2002-07-31 12:10
2002.08.22
Как проиндексировать базу





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский