Форум » GUI » TsBrowse в Минигуи (продолжение) » Ответить

TsBrowse в Минигуи (продолжение)

Vlad04: TsBrows определяется в виде строки ПАРМЕТРОВ объекта и их значений К примеру [quote] DEFINE TBROWSE oBrw2 ; AT 60,450 ; ALIAS cAlias ; OF Form1 ; WIDTH 330 ; HEIGHT 340 ; FONT "Verdana" ; SIZE 9 ; ON DBLCLICK CopyRec(); ON GOTFOCUS fModelo_Hab(2) ; AUTOFILTER ; CELLED EDIT; VALUE nRec; GRID [/quote] Здесь я собрал параметры из разных tBrows Можно или нет и какие парметры заменить выражением ( и каким) ? oBrw2:.... oBrw2:....

Ответов - 300, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All

Петр: SergKis пишет: Проще удалить контрол Tsb и пересоздать новый Совершенно с Вами согласен. Если уже создан контрол, то оформить его создание (удаление) в виде отдельной функции и использовать ее столько раз, сколько будет нужно - выглядит совершенно естественно. Но хозяин - барин, и время и нервы его..

Andrey: SergKis пишет: Только во всей этой катавасии со сменой структуры и колонок (SuperHeader, Footer, цветов), большого смысла не вижу. Сначала показалось, что речь идет о смене с пустого файла на нормальный, а тут ... Проще удалить контрол Tsb и пересоздать новый, чем сохранять цвета, удалять колонки Петр пишет: Если уже создан контрол, то оформить его создание (удаление) в виде отдельной функции и использовать ее столько раз, сколько будет нужно - выглядит совершенно естественно. Но хозяин - барин, и время и нервы его.. Ну теперь понятно как делать ! Спасибо за подсказку.

Andrey: Как можно сделать функцию чтения текущего цвета, чтобы его (цвет) потом передавать для другого условия ? Например, если поставить два условия:[pre2] // --- меняем цвета текста в ячейках таблицы --( oCol:nClrFore = oBrw:SetColor({1}...)--- AEval(oBrw:aColumns, {|oCol,nCol| oCol:nClrFore := { |a,b,o| ; iif( (o:cAlias)->ERR_4 == -1 , CLR_HRED, CLR_BLACK ) } }) AEval(oBrw:aColumns, {|oCol,nCol| oCol:nClrFore := { |a,b,o| ; iif( (o:cAlias)->ERR_4 == 1 , CLR_HBLUE, CLR_BLACK ) } })[/pre2] то последнее условие будет всегда исполнятся, первое условие будет игнорироваться. Можно ли как то сделать типа так: ??? [pre2] AEval(oBrw:aColumns, {|oCol,nCol| oCol:nClrFore := { |a,b,o| ; iif( (o:cAlias)->ERR_4 == -1 , CLR_HRED, MyCLR() ) } }) AEval(oBrw:aColumns, {|oCol,nCol| oCol:nClrFore := { |a,b,o| ; iif( (o:cAlias)->ERR_4 == 1 , CLR_HBLUE, MyCLR() ) } })[/pre2] Ну может ещё параметр передавать в MyCLR() нужно...


Andrey: Блин, что то я ступил... Решение то простое. Совсем заработался... AEval(oBrw:aColumns, {|oCol,nCol| oCol:nClrFore := { |a,b,o| MyTsbColorText( (o:cAlias)->ERR_4 ) } } ) .............. //////////////////////////////////////////////////////////// STATIC FUNCTION MyTsbColorText(nVal) LOCAL nColor IF nVal == -1 nColor := CLR_HRED ELSEIF nVal == 1 nColor := CLR_HBLUE ELSE nColor := CLR_BLACK ENDIF RETURN nColor

Andrey: А вы знаете, что в МиниГуи 16.09 содержится 5796 файлов - размером 85,5 Мб ? А в папке Include 90 файлов занимают 1,01 Мб ? А папка исходников SAMPLES с *.prg весит 8,85 Мб и кол-во файлов 1003 и самые первые исходники датированы 2003 годом ? Все эти сведения смотрите в новом примере Tsbrowse у Григория !

Dima: Andrey При чем тут твое сообщение и название темы ? О каком примере речь ? PS Хорошая трава у тебя однако

Петр: Dima пишет: При чем тут твое сообщение и название темы ? О каком примере речь ? Скорее всего, Андрей написал новый пример на тему использование Tsbrowse в MiniGUI и надеется, что Григорий его опубликует в новом релизе.

gfilatov2002: Петр пишет: Андрей написал новый пример на тему использование Tsbrowse в MiniGUI Так и есть Петр пишет: Григорий его опубликует в новом релизе Да, я включил этот пример после небольшой чистки в 4-ю бету. Петр Выложил 4-ю бета-сборку на ftp по прежнему адресу

krutoff: Обратил внимание h_tbrowse.prg в методе Excel2 если выводит цифровые данные по шаблону допустим 999999.99 -> то результат будет с одним знаком после запятой и меньшим в 10 раз. Раньше не обращал внимание - все работало. Крутил блок со строки 4374: if "@Z " $ ::aColumns[ nCol ]:cPicture .or. LEN(cPic) > 3 пока результата не добился...

Andrey: Петр пишет: Скорее всего, Андрей написал новый пример на тему использование Tsbrowse в MiniGUI Нет, не я написал. SergKis сделал.

Andrey: Всем привет. Вопрос возник по бровсу. На окне имею Tsbrowse с вертикальной линией скролинга и подвалом. Делаю - oBrw:Enabled( .F. ) // отключить показ TBROWSE Шапка таблицы становится серой, сама таблица пропадает, а подвал и скролинг остаются. Это должно быть так или это глюк ? Как убрать скролинг и подвал ?

SergKis: Andrey сделай SetProperty(oBrw:cParentWnd, oBrw:cControlName, "Enabled", .F.)

SergKis: Andrey Если хочешь скрыть tsb, делай oBrw:Hide()

krutoff: krutoff пишет: Обратил внимание h_tbrowse.prg в методе Excel2 если выводит цифровые данные по шаблону допустим 999999.99 -> то результат будет с одним знаком после запятой и меньшим в 10 раз. Раньше не обращал внимание - все работало. Крутил блок со строки 4374: if "@Z " $ ::aColumns[ nCol ]:cPicture .or. LEN(cPic) > 3 пока результата не добился... Неужели у всех цифровые поля с копейками нормально в Excel выводятся? Или никто в XLS TSBrowse не выводит?

Andrey: SergKis пишет: сделай SetProperty(oBrw:cParentWnd, oBrw:cControlName, "Enabled", .F.) Не помогает ! Остаётся так же: со скролингом и подвалом таблицы. Версия 16.09 ! SergKis пишет: Если хочешь скрыть tsb, делай oBrw:Hide() Это получше.... Пока пойдёт ! Но я хотел бы на дальнем фоне оставить таблицу заблокированную, на будущее...

Andrey: krutoff пишет: Неужели у всех цифровые поля с копейками нормально в Excel выводятся? У меня тоже нет второго 0. выводит только 0.0, вторую цифру после нуля обрезает.

SergKis: Andrey пишет Не помогает ! Остаётся так же: со скролингом и подвалом таблицы. Версия 16.09 ! версия 2.07. oBrw:Enabled(.F.) - как утебя, SetProperty(...) - все хорошо, таблица блокирована, отображение норма

Andrey: Опять глюк поймал... Сделал меню (2 колонки) из Tsbrowse, назначил только блок кода на обработку: [pre2]oBrw:aColumns[1]:bPrevEdit := {|| MenuRun(), FALSE } oBrw:aColumns[2]:bPrevEdit := {|| MenuRun(), FALSE } ..... STATIC FUNCTION MenuRun() .... SetProperty(oBrw:cParentWnd, oBrw:cControlName, "Enabled", .F.) oBrw:Hide() // отключить показ Tsbrowse Menu2Start("RUN new function", oBrw:nAt ) oBrw:Show() // включить показ Tsbrowse SetProperty(oBrw:cParentWnd, oBrw:cControlName, "Enabled", .T.) oBrw:Refresh(.T.) Form_2.oBrw.Setfocus RETURN Nil[/pre2] Функцию обработки при изменении позиции маркера не использую. //oBrw:bChange := { |oBrw| ChangeTable(oBrw) } В функции Menu2Start("RUN new function", oBrw:nAt ) - всё равно происходит показ таблицы oBrw ! Почему ? Мышкой по клацаешь (или стрелками с Enter используешь) и таблица вся появляется... Что нужно добавить чтобы таблица не появлялась в функции Menu2Start() ?

Dima: Andrey пишет: В функции Menu2Start("RUN new function", oBrw:nAt ) Ты ведь покажешь что в ней живет ? Телепаты в отпуске. PS Только не надо мне ее на мыло слать , сюда пиши.

Andrey: Dima пишет: Ты ведь покажешь что в ней живет ? Телепаты в отпуске. Да в той функции нет обращений к объектам таблицы. Только кнопочки и смена фона. Я разобрался с этим. Оказывается всё просто, нужно [pre2]SetProperty(oBrw:cParentWnd, oBrw:cControlName, "Enabled", .F.) oBrw:Hide() // отключить показ Tsbrowse [/pre2] поместить в саму функцию Menu2Start(), а [pre2]oBrw:Show() // включить показ Tsbrowse SetProperty(oBrw:cParentWnd, oBrw:cControlName, "Enabled", .T.) oBrw:Refresh(.T.) Form_2.oBrw.Setfocus [/pre2] поставить перед выходом из функции Menu2Start() ! И глюк пропал... Замена мест слагаемых - меняет действие глюка.



полная версия страницы