Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Про Форму
 
 автор: kot_k_k   (06.11.2009 в 09:44)   личное сообщение
 
 

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

  Ответить  
 
 автор: osmor   (06.11.2009 в 10:18)   личное сообщение
 
 

что значит "получить"?

  Ответить  
 
 автор: kot_k_k   (06.11.2009 в 11:03)   личное сообщение
45 Кб.
 
 

форма на основании таблы - в табле N строк, на экран выводится какоето J кол-во строк (10-20 от размера формы), мы двигаесмя по форме вверх-низ, так как создать грубо говоря Me.Recordsetclone - который содержит только те строки которые входят в J .

  Ответить  
 
 автор: osmor   (06.11.2009 в 11:25)   личное сообщение
 
 

понятно. не знаю. а зачем?

  Ответить  
 
 автор: kot_k_k   (06.11.2009 в 14:28)   личное сообщение
 
 

есть мечта идиота (не жена соседа).
при работе с графиком производства визуализировать как диаграмма Ганта, только сложнее.
хочу к субформе (ленточной) рядом воткнуть график, который рисую, но график рисуется от начала списка (ленточной формы) а нужно поймать первую видимую запись (на текущий момент) и от нее перерисовать график.

  Ответить  
 
 автор: Lukas   (06.11.2009 в 14:36)   личное сообщение
 
 

Применяйте/меняйте фильтры к ленточной форме и их-же (фильтры) к диаграмме.

  Ответить  
 
 автор: kot_k_k   (06.11.2009 в 15:35)   личное сообщение
 
 

нет фильтр не нужен - просто записи подряд, а мне нужна первая которую зрит пользователь??? и от нее строить график.

у меня не диаграмма - просто рисунок , накачал на Лебансе (классно, но быстро понять не возможно), под себя подточил.

  Ответить  
 
 автор: kot_k_k   (06.11.2009 в 15:46)   личное сообщение
 
 

Вот пример.

http://slil.ru/28169397

  Ответить  
 
 автор: Lukas   (06.11.2009 в 15:47)   личное сообщение
 
 

При применении фильтра и сортировки, вы имеете возможность знать, какую запись "первой" видит пользователь, и "от нее" строить график.
Тем более по дате это легко организовать.

  Ответить  
 
 автор: kot_k_k   (06.11.2009 в 16:05)   личное сообщение
 
 

По пробую по другому
пример:
на форме запись получила фокус, которая 3-я по счету (видимая), как узнать ее положение на форме в данный момент? или как от Акса получить эту цифру 3?

  Ответить  
 
 автор: osmor   (06.11.2009 в 16:15)   личное сообщение
 
 

seltop не поможет?

добавлено...

Ну в общем не очень-то...
если только условится что текущей всегда является самая верхняя видимая строка

  Ответить  
 
 автор: Lukas   (06.11.2009 в 16:29)   личное сообщение
 
 

1. Считать значение поля/полей (Дата, ID и т.п.) текущей записи.
2. Обратиться к источнику данных, аналогичному источнику формы.
3. Посчитать сколько записей попадает в диапазон между "первой" записью источника и текущей.
4. Сделать математический вывод.

  Ответить  
 
 автор: kot_k_k   (06.11.2009 в 16:35)   личное сообщение
 
 

Да правильно, но вот и нужно узнать позицию относительно положения на форме!
она видимая Первая, 10-я и или последняя видимая но не последняя в физичесокм списке.

вот нарыл, но предложенная функция не пошла, может не так прикрутил посмотрите!!!
http://www.sql.ru/Forum/actualthread.aspx?tid=704155

  Ответить  
 
 автор: kot_k_k   (06.11.2009 в 16:57)   личное сообщение
46 Кб.
 
 

Уря, нашел!!!
сам когда-то лепил

Me.CurrentSectionTop - вот он северный олень!!!!!

  Ответить  
 
 автор: Lukas   (06.11.2009 в 17:04)   личное сообщение
 
 

И какова преследуемая цель?
Где это значение используется в дальнейшем?

  Ответить  
 
 автор: kot_k_k   (06.11.2009 в 17:22)   личное сообщение
 
 

в даном случае

me.CurrentSectionTop / 315 (толщина строки) - 1 

дает номер позиции в видимом диапазоне, что позволяет получить весь видимый диапазон и для него составить график.

  Ответить  
 
 автор: Lukas   (06.11.2009 в 17:58)   личное сообщение
43 Кб.
 
 

По таймеру (1 сек), записываю результат вычисления в Caption формы,
сам кручу вертикальный скролинг и изменяю размер формы.
Текущая запись одна и та-же.
Некоторые рез-ты в скрине:

  Ответить  
 
 автор: Explorer   (06.11.2009 в 18:54)   личное сообщение
 
 

Lebans больше не обновляют, но еще не закрыли

http://www.lebans.com/DownloadFiles/SetGetScrollbars.zip

  Ответить  
 
 автор: Lukas   (06.11.2009 в 19:08)   личное сообщение
 
 

Спасибо, Explorer, но я предпочитаю работать с самими данными, а не "добывать" их из контролов
через определение положения контролов на форме (с учетом скроллинга и прочая и прочая) по таймеру.
К чему и ТС пытаюсь склонить.

  Ответить  
 
 автор: kot_k_k   (09.11.2009 в 08:26)   личное сообщение
 
 

На скролл тоже натолкнулся.
Таймер первым делом пришел на ум реализация простая, но вопрос как можно обрабатывать скрол (типа по взрослому)?

а лебанса я просто выкачал све, что на странице было - вот теперь разбираться надо, но где взять время на учебу. спасибо за ссылку - опять красота и нифига не ясно, хоть бы коменты на русском писал "гадский папа"

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList