Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Прогресс бар в гриде / 17 сообщений из 17, страница 1 из 1
26.05.2014, 14:16
    #38652078
walking_ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
Добрый день
есть у кого нить нормально работающий прогресс бар в гриде? поделитесь :)
стандартный актив Х вроде нормально работает но видно его тока когда ячейка с ним активна ну и у него нету текстового поля куда можно вывести значение.
Свой сделал но никак не пойму почему он не ресайзится вместе с колонкой грида.
одним словом если у кого есть примеры поделитесь.
спасибо.
...
Рейтинг: 0 / 0
26.05.2014, 14:39
    #38652109
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
walking_uaно видно его тока когда ячейка с ним активна
Поставь Column.Sparse = .F.
...
Рейтинг: 0 / 0
26.05.2014, 15:03
    #38652141
walking_ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
ставил, все равно не видно.
...
Рейтинг: 0 / 0
27.05.2014, 14:35
    #38653339
walking_ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
с ресайзами разобрался, не к тому привязывался:)
ну теперь другая проблема. объяснять долго, может все таки у кого нить есть нормально работающий прогресс бар в гриде, поделитесь буду благодарен.
спасибо.
...
Рейтинг: 0 / 0
27.05.2014, 15:57
    #38653514
IgorNG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
walking_ua,

Что имеется в виду "прогресс бар в гриде"? Что прогрессировать?
...
Рейтинг: 0 / 0
27.05.2014, 16:29
    #38653577
walking_ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
в таблице есть поле которое показывает в % выполнение определенных задач, сейчас это выглядит что-то типа 10% задача1, 50% задача2. Вот захотелось на фоне этих % закрашивать ячейку в зависимости от % выполнения. если 50% выполнено то закрасить ячейку на 50% и т.п. Это напоминает обычный прогресбар но для каждой строки свой.
...
Рейтинг: 0 / 0
27.05.2014, 16:41
    #38653595
IgorNG
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
walking_ua,
Почитай здесь http://forum.foxclub.ru/read.php?29,513213,513213#msg-513213
Может, что подчерпнешь.
...
Рейтинг: 0 / 0
28.05.2014, 09:19
    #38654077
walking_ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
Спасибо, почитал, но тема не раскрыта до конца.
Уперся в то что не могу для каждой колонки отрисовать свой прогресс они у меня все одного уровня получаются.
может кто все таки бился над подобной темой поделитесь опытом.
спасибо.
...
Рейтинг: 0 / 0
28.05.2014, 09:41
    #38654097
Прогресс бар в гриде
walking_uaв таблице есть поле которое показывает в % выполнение определенных задач, сейчас это выглядит что-то типа 10% задача1, 50% задача2. Вот захотелось на фоне этих % закрашивать ячейку в зависимости от % выполнения. если 50% выполнено то закрасить ячейку на 50% и т.п. Это напоминает обычный прогресбар но для каждой строки свой.

В бытность ДОСа это реализовывалось через "закрашенные квадратики", количество которых в строке/поле определялось на основе %% выполнения и "масштабного коэффициента"

Но вообще, в рамках Фокса задачка несколько тяжеловато выглядит, так как, исходя из описания, так и хочется отдельные потоки организовать... А Фокс не стал многопоточным, несмотря на то, что давно уже в виндах работает...
...
Рейтинг: 0 / 0
28.05.2014, 09:55
    #38654116
walking_ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
мда, вот и мне кажется что задача не с простых.
Хоть одиночный прогресс отрисовать и не сложно, а вот что бы в каждой строке было свое значение тут загвоздка.
...
Рейтинг: 0 / 0
28.05.2014, 10:11
    #38654143
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
Можно извратится с картинками (я так статусы вывожу): сделать 10-15 однотипных картинок с разным состоянием прогресбара.
Затем добавить все в колонку грида
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
with MyGrid.Column
	.AddObject('img1', 'Image')
	.img1.Picture = 'img1.bmp'
	.img1.BackStyle = 0

	.AddObject('img2', 'Image')
	.img2.Picture = 'img2.bmp'
	.img2.BackStyle = 0
...
	.Text1.Visible = .F.
	.Sparse = .F.
	.AlignMent = 2
	.Width = 40
	.Header1.Caption = 'Готовность'
	.ControlSource = 'MyTable.MyField'

	.DynamicCurrentControl = 'iif(!between(MyTable.MyField, 1, 10), "Text1", "img" + alltrim(str(MyTable.MyField)))'
endwith


Будет показывать картинку в соответствии со значением MyTable.MyField.

Можно не прогрессбар, а чего-нибудь другое нарисовать.
...
Рейтинг: 0 / 0
28.05.2014, 11:10
    #38654211
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
walking_uaмда, вот и мне кажется что задача не с простых.
Хоть одиночный прогресс отрисовать и не сложно, а вот что бы в каждой строке было свое значение тут загвоздка.Разумеется. Ибо таковы свойства ActiveX контролов. Они не лежат на форме и не принадлежат фоксу. Это отдельные окна, плавающие над формой. А в гриде из контролов состоит только текущая строка, а в остальных только картинка, след от контрола. А так как ActiveX контролы в угоду фоксу не научили оставлять после себя следы, то...
...
Рейтинг: 0 / 0
28.05.2014, 11:18
    #38654224
walking_ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
с DynamicCurrentControl попробую, но хотелось бы конечно чтобы это был график для любого % выполнения а не тока 10,20,30,40...100.
за активх спасибо за разъяснение, теперь понятно чего он так себя ведет.
...
Рейтинг: 0 / 0
28.05.2014, 13:43
    #38654431
rikitiki
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
...
Рейтинг: 0 / 0
28.05.2014, 14:36
    #38654546
walking_ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
rikitiki,

Это то что нужно.
труба как все у него просто :)
спасибо за ссылку
...
Рейтинг: 0 / 0
28.05.2014, 14:53
    #38654590
Прогресс бар в гриде
Из ссылкиlnWidth = (This.Parent.Width - 35) * (lnValue/lnTotalTicks)

Я примерно про то же и говорил:
Станислав С...кийВ бытность ДОСа это реализовывалось через "закрашенные квадратики", количество которых в строке/поле определялось на основе %% выполнения и "масштабного коэффициента"

Все новое - хорошо забытое строе...
...
Рейтинг: 0 / 0
28.05.2014, 15:48
    #38654699
Дед Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Прогресс бар в гриде
В свою бытность делал что то подобное, закрашивался техтбох(.TextScrol_2), наложеной на него квадратиком другого цвета (.Shape1). Где nScanLine счетчик выполнения прохождения, отностельно общего количества зписей в таблице (MyTable). Вычисляется процентное отношения отсканированных записей от общего количества, и относительно размера длины поля Техтбокса (OBJTOCLIENT), заполняется закрашеным квадратиком. В певоначально значении перед сканированием .Shape1.Width = 0. :

Код: sql
1.
2.
3.
4.
5.
6.
SELECT MyTable
nScanLine = 0
SCAN
   nScanLine = nScanLine + 1   
   .Shape1.Width  = ROUND((OBJTOCLIENT(.TextScrol_2,3))*((nScanLine/RECCOUNT("MyTable"))*100)/100,0)
ENDSCAN


Под себя можешь переписать этот код, так как это просто выдранный кусок, но думаю мысль понятна.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Прогресс бар в гриде / 17 сообщений из 17, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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