
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
23.05.2003, 00:43
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
Хотелось бы узнать у многоуважаемого All, возможен ли сабж? Т.е. он, конечно, возможен через жутчайшие извраты с изменением Х-координат полей ленточной формы и даже всяких "дерганий" удается избежать через временное отключение прорисовки формы, но решение, имхо, некрасивое (читать: "непрофессиональное"). Теоретически, задача решается "красиво" через функции WinAPI ScrollWindow или ScrollWindowEx с заданием прямоугольника отсечения в котором и будет производиться скрол, но на практике... на практике (которой у меня по отношению к WinAPI оч. мало) Акс накладует на ся руки, после моих обращений к недрам мелкомягких :( Просветите плз... з.ы. табличная форма со встроенной фичей "закрепленных столбцов" по ряду причин не устраивает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2003, 09:45
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
Чем самому изобретать очередной Grid лучше воспользоваться готовым. А когда воспользуешься - посмотри на его размер и прикинь сколько человеко-лет потратила компания на его создания и спроси у себя" А у меня есть столько времени?" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2003, 10:21
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
использую табличные формы меняется практически все минус - нельзя добавить кнопку или картинку, да фиг с ними в ленточной все жестко закреплено один юзер хочет один столбец туда поставить, другой местами поменять сортировку по нескольким столбцам не сделаешь на всех не угодищь а вот табличная форма угодит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2003, 11:24
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
> минус - нельзя добавить кнопку или картинку, да фиг с ними Да и это решаемо: табличная форма сажается в сабформу, а кнопки делаются на главной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2003, 20:15
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
Ну млин... :( Када я научусь сабжи однозначные писать? Завтра вернусь и притащу много чтива для All... Бойтесь! :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.05.2003, 21:19
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
БОИМСЯ ПОДРОБНОСТИ ПИСЬМОМ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.05.2003, 22:13
|
|||
|---|---|---|---|
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
Обещанное... Сразу хочу сообщить, что сим не пытаюсь спорить с мнением ответивших, а просто объясню почему сабж. >Чем самому изобретать очередной Grid лучше воспользоваться готовым. Так я и пользуюсь готовым - ленточная форма тоже грид. Но тока добавляю в него необходимую мне функциональность. >использую табличные формы меняется практически все... Не согласен. Много чего задается только для таблицы целеком, а мне надо, чтобы задавалось для каждого отдельного столбца (шрифт, цвет, граница и т.п.). Постойте бить за это! Дальше будет повод получше :) >в ленточной все жестко закреплено >один юзер хочет один столбец >туда поставить, другой местами >поменять >сортировку по нескольким >столбцам не сделаешь >на всех не угодищь >а вот табличная форма угодит Не согласен. Пример: На одной машине посменно работают два юзера. Один желает чтобы столбцы были расставлены так, а другой эдак, шрифты разные ставят (один видит плоховато, а другой отлично) и т.п. Результат - мордобой. С другой стороны, я в своей "ленточной жестко закрепленной" создаю схемы настроек грида, при этом каждый юзер может работать под своей. Более того, юзер может оч. быстро переключаться между двумя настройками (не буду развивать зачем, но частенько пригождается). И чтобы добить нервного All, кричащего в соседнем топике "Быстрый поиск", что, мол, юзеры будут делать то и так, как я соизволю сделать, а не так, как они хотят это делать... Теоретически, любой объект учета может иметь собственную схему настроек грида. Больше всего данная фича используется в отнощении сущностей "Поставщик" - при оприходовании товара от большинства поставщиков используется умолчательная схема настроек грида, но для некоторых настройка такова, что в гриде появляются некоторые дополнительные поля, характерные для товара, поставляемого данным поставщиком), либо данные выводятся в виде "просто-ленточных" ("ленто-просточных") форм. (см.ниже) Настраиваться в гриде могут следующие вещи: - отображаемость столбцов; - порядок столбцов; - шрифт, размер шрифта, цвет шрифта, фона и границы, тип границы, выравнивание - для кажого столбца отдельно; - включение/отключение режима поиска/фильтрации при нажатии буквенно-цифровых клавиш в столбце: Поиск по столбцу, Перевод поиска в другой столбец, Ситуационное поведение режима поиска/фильтрации (если нажата цифровая клавиша в числовом столбце, то редактирование записи, иначе - поиск по данному или другому столбцу. Если нажата буквенная клавиша в текстовом столбце, то редактирование, иначе поиск в указанном столбце); - поведение курсора по клавише Энтер / Шифт+Энтер для каждого столбца (перемещение вверх/вниз; влево/вправо; как Таб; курсор не перемещается); - наличие и тип итогового поля для любого столбца в гриде; - настройка вида курсора - выделение текста или выделение фона; - настройки по умолчанию сортировок, элемента интерфейса ноу-хау :), системы доступа к данным группа/источник_данных_для_группы (тоже ноу-хау:)), и еще одного не классифицируемого ноу-хау (теперь можно бить Кроме этого грид содержит оч. удобный (проверено практикой) интерфейс ручной сортировки данных (в порядке, заданном пользователем), что нашло отражение в огромном числе моментов (сам не ожидал, но сортировка по порядковым номерам, установленным юзером или системой используется на ура даже там, где традиционно использовались автоматические сортировки данных). Самое страшное, за что меня можно просто прикончить... Ленто-просточная форма... Ну или "Просто-ленточная" :) Представьте себе что одна запись в гриде расположена... на нескольких строках. Т.е. то же самое (поля, лэйблы и т.п.) что и простая форма с одной записью, но растиражированная по экрану. Кайф здесь в том, что юзер может видеть сразу все 120 полей (утрирую), относящихся к одной записи, не гоняя тудема-сюдема грид по горизонтали! При этом сохраняется возможность увидить сразу несколько записей. Очень удобно! Ну просто-таки чертовски удобно!!! Ну так и при всем сказанном, можно ли было реализовать сие где-нить, окромя как в ленточной форме? А сабж - попытка добавить функциональности и получить практику в изучении WinAPI. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.05.2003, 14:36
|
|||
|---|---|---|---|
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
Оно по умолчанию "закрепленные". Чтобы все задвигалось - код писать надо. ...вот если не хватает ширины разве. Об этом? 1. На вскидку: чтобы перестало двигаться все вместе - бей на 2 сабформы. 1 - по ширине "закрепленной части (без скролинга); "На переднем плане". 2-я - с прокруткой ("на заднем"). Главная - без. Сабформы - 2 идентичные (по набору элементов). Кстати, можно наверное и 1-й в 2-х экземплярах обойтись. Но что показывать и ширину и позиции элементов (да и сабформ)- задавать (синхронно) программно. И API не нужен. Накладно, конечно. Не только на оперативку: - синхронизировать фильтры, прокрутки (вертикальные) и сортировки придется. А это, похоже, каша. Но один из вариантов. 2. Вариант 2: (одна форма) - убрать прокрутку, а сдвиг Left.-ов привязать к паре кнопок (туды-сюды). (+ Visible для "задних") С дискретом, положим, или на начало следующего. Пару коллекций завести - для "замороженных" и для "отмороженных" полей... Опять без APi выходит. Где-то похожая работа со списком была. megakot.com, что ли. Заодно и изменение ширины полей мышью подсмотреть можно. Поищи по форумам. Да, если реализовывать сдвиг не на целое (очередное) поле, а "с дискретом" то обработка "задвигаемого" будет довольно не тривиальна (сдвиг текста). НАпример можно специально создать дополнительный контрол "на заднем плане" и менять ему источник на текущий "задвигаемый". Его и задвигать "под фиксированные". Но при фокусе в нем это будет некрасиво. Если прозрачый фон. (что, видимо, пользуется для "расскрасок"). Т.ч. придется либо с фокусом обломаться, либо с красотой. ЗЫ. .Хотя и понятно, что ответ не нужен :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.05.2003, 14:47
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
у меня и в табличных формах все меняется и сохраняются личные настройки каждого (без API) непонятно чем автор хотел удивить? знанием API? молодец, что теперь все пункции API знаешь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.05.2003, 14:48
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
Пару коллекций завести - для "замороженных" и для "отмороженных" полей... Думаю, не стоит. Надо, что бы в Form.Controls поля были попорядку отображения, и запоминать только поле с которого начинается "прокрутка". На пол-поля скролинг не нужен, добавить только значки что слева/справа есть невидимые поля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.05.2003, 15:04
|
|||
|---|---|---|---|
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
Согласен. Дык он морозить (и упорядочивать) собрался по выбору юзера? Тогда куда-то это пихать надо. А перебор по коллекциям (или массивам) со сменой порядка неплохо согласуется. А если и настройки хранить - то даже табла с персональными настройками потребуется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.05.2003, 15:09
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
2assa > если и настройки хранить - то даже табла с персональными настройками потребуется. Может и не потребоваться, если использовать Property формы. Но тогда при следующем обновлении проги все похериться, лучше таблицу держать- ничего в этом страшного нет. Со всем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.05.2003, 17:22
|
|||
|---|---|---|---|
|
|||
Закрепленные столбцы в ленточной форме - фантастика? |
|||
|
#18+
для assa: нда, с двумя сабформами действительно головняк. По поводу второго варианта, то как и было заявлено в самом первом послании схема с изменением Х-координат (.Left) опробована и вполне сносно работает. "Сносно" - потому что реакция грида (прокручиваемых столбцов) несколько заторможена, что особенно сильно заметно на слабеньких машинках, например, на 200 пне. Тем не менее спасибо за варианты, лишенные иронии... Хотя, постойте... >ЗЫ. .Хотя и понятно, что ответ не нужен :) Хм... Что бы сие значило? :) для Хам трамвайный: >у меня и в табличных формах... А мне казалось, что я достаточно ясно и обоснованно указал на то, что табличные формы мне не подходят в данном случае... Хм... >...все меняется и сохраняются личные настройки каждого (без API) Личные настройки каждого у меня тоже без API, а в обычных, знаете ли, таких табличных табличках. А при загрузке проекта, данные из табличек грузятся в мою объектную модель (коллекции). И не просто грузятся, а умно грузятся - для каждого юзера ведется учет и анализ наиболее часто используемых им настроек грида, в результате при загрузке проекта грузятся только наиболее употребимые, а остальные - на лету по мере необходимости. И заметьте: Ни одного обращения к API :) >непонятно чем автор хотел удивить? знанием API? молодец, что теперь все пункции API знаешь Знал бы - не спрашивал бы! Да и удивить через "Помогите!" достаточно сложно... имхо... для V. Motchulsky: >...добавить только значки что слева/справа есть невидимые поля. Ценное замечание. Спасибо. (без иронии) А с API было бы, имхо, лучше... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=45&tablet=1&tid=1681404]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
64ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 357ms |

| 0 / 0 |
