|
|
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Делаю поиск в таблице, нахожу запись. RECNO()=8 (к примеру). На форме есть Grid. Как реализовать, что бы курсор в гриде перемещался на указанную запись. У Grid RecordSource=table1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 14:33:31 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Да,забыл ещё спросить. Перемещаясь по Grid мне ещё потребуется перемещаться в таблице. Как это организовать. К примеру,переместились в Grid на 2 строки в низ и Recno() увелицился на 2 в соответствующей таблице ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 14:36:01 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Добавь ThisForm.Grid1.Refresh ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 14:56:28 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Я немного не понял. Если я просто вставляю в код grid.Refresh то ничего не происходит. Проясню ситуацию. У меня есть форма, на которой размещён Грид. Ьам есть кнопка. При её нажатии открывается новая форма с текстовым полем, в котором указываешь фамилию и делаешь поиск. У меня правильно находится запись, но вот курсор в первойформе в гриде никуда не перемещаетсят и вообще не появляется! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 15:12:46 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Сразу после нахождения записи надо нарисовать что-то вроде Твоя_первая_форма.grid1.refresh() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 15:22:15 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Вот такой код ничего не делает! SELECT "test1" GO TOP IN test1 LOCATE FOR test1.name=ALLTRIM(thisform.text1.value) frm1.Grid1.Refresh() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 15:25:26 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Добрый день! добавь еще в конец кода: frm1.grid1.setfocus() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 15:38:29 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Добавил! Теперь устанавливает курсор на первую запись, но никак не на нужную!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 15:44:38 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
> курсор устанавливается на 1 - ю запись значит при возвращении в frm1 где то есть go top (может в activate формы ?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 15:53:04 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Go top нигде не нашёл. Я код опубликую, может где ошибка какая. Главная программа DO FORM "form2" NAME frm1 DROP TABLE "test1" SELECT name,p_ser,p_nom, adres from db_path+"vk_klie.dbf" INTO TABLE test1 frm1.Grid1.ColumnCount=4 frm1.Grid1.RecordSourceType=0 frm1.Grid1.RecordSource="test1" frm1.Grid1.AutoFit() frm1.Grid1.Column1.Header1.Caption="xxx" frm1.Grid1.Column2.Header1.Caption="yyy" frm1.Grid1.Column3.Header1.Caption="zzz" frm1.Grid1.Column4.Header1.Caption="aaa" READ EVENTS Код кнопки формы, которую вызываю: SELECT "test1" GO TOP IN test1 LOCATE FOR test1.name=ALLTRIM(thisform.text1.value) GO RECNO() IN "test1" frm1.Grid1.Refresh() frm1.Grid1.setfocus() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:01:11 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
что то наподобие этого Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:11:03 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
А зачем эта строка? GO RECNO() IN "test1" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:17:06 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
забыл поставить вконце thisform.grid1.setfocus() &&Для получения фокуса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:17:19 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
to GoshaS ваш вариант _screen.ActiveForm.refresh() не подходит, т.к. активная форма не та, на которой находится грид. А вот такой код: SELECT "test1" GO TOP IN test1 LOCATE FOR test1.name=ALLTRIM(thisform.text1.value) frm1.Grid1.Refresh() frm1.Grid1.setfocus() thisform.Release всё так же устанавливает курсор на первую запись в таблице ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:22:02 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Я думаю что нужно убрать эту строчку GO TOP IN test1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:26:55 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Если убрать результат одинаковый ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:31:08 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
не знаю как установлены set для сравнения строк,поэтому для строгости надо: LOCATE FOR ALLTRIM(test1.name)==ALLTRIM(thisform.text1.value) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:31:51 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
почитай статью В.Гринчишина про грид на Foxclub.ru Там много очень полезных вещей хотя к 9 многие проблемы грида решены ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:32:06 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
а у тя таблица случаеи не под фильтром??? могет реляция какая, или set key ... в общем точно погляди....... или запись там заблокированна нужная тебе.... -------------- И это пройдет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:36:35 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
to sar99 Он правильно находит запись. Если указать messagebox(RECNO()) то там будет правильный номер!!!!! А вот Гриде он никак не перемещае курсор. В чём затуп - не пойму!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:37:01 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
to бендер Практикиу меня не сильно много. Как посмотреть под фильтром ли таблицаа или нет??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:39:38 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
для тестирования поставь в кнопке после locate brow (точно проверишь установку маркера курсора!) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:42:48 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
Поставил browse Как я и говорил.... Всё устанавливается!!!! Только не в Гриде!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:45:51 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
все же внимательно посмотри на события grid (в конструкторе формы кликни на grid - измененные события выделяются жирным текстом) может где-то стоит go top ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:51:55 |
|
||
|
Вопрос по Grid
|
|||
|---|---|---|---|
|
#18+
GO TOP IN test1 GO RECNO() IN "test1" однозначно в данном коде не нужны в Load Init Refresh формы и грида что нибудь прописано? *** Да и в поиске лучше приводить к одному регистру, скажем: LOCATE FOR lower(ALLTRIM(test1.name))==lower(ALLTRIM(thisform.text1.value)) если задать не "==" , а "=" тогда, в зависимости он настроек, скажем аааа=а будет истинно, бывает даже удобней, не надо вбивать полностью фамилию. *********** FILTER() && Возвращает выражение фильтра таблицы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2005, 16:53:11 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33225783&tid=1593641]: |
0ms |
get settings: |
9ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
347ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 191ms |
| total: | 617ms |

| 0 / 0 |
