On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
Vlad04
постоянный участник


Пост N: 420
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 19.12.13 18:16. Заголовок: TsBrowse в Минигуи (продолжение)


TsBrows определяется в виде строки ПАРМЕТРОВ объекта и их значений
К примеру

 цитата:

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


Здесь я собрал параметры из разных tBrows
Можно или нет и какие парметры заменить
выражением ( и каким) ?
oBrw2:....
oBrw2:....



Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]


Andrey
постоянный участник




Пост N: 5492
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 28.08.17 23:53. Заголовок: 1) Нет надписи по ко..


1) Нет надписи по команде - WAIT WINDOW "Подождите, создаю тестовую базу...." NOWAIT
На ХР надпись есть. Видать Win8.1 не срабатывает...

На ХР появляется квадрат Малевича - синего цвета. Почему ?


Вроде осталась последняя "непонятка" в примере и всё остальное работает !
Просьба ко всем - протестировать последнюю версию https://cloud.mail.ru/public/DFuN/tzKsbUF8R


Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6546
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 29.08.17 08:28. Заголовок: Andrey пишет: 1) Не..


Andrey пишет:

 цитата:
1) Нет надписи по команде - WAIT WINDOW "Подождите, создаю тестовую базу...." NOWAIT
На ХР надпись есть. Видать Win8.1 не срабатывает...


Попробуй с цветами поиграть , может появится...

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5494
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 29.08.17 16:29. Заголовок: Dima пишет: Попробу..


Dima пишет:

 цитата:
Попробуй с цветами поиграть , может появится...


А как пробовать то ?
Там просто, без параметров - WAIT WINDOW "Подождите, создаю тестовую базу...." NOWAIT
На ХР, Win7, Win10 надпись есть !


Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6547
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 29.08.17 16:46. Заголовок: Andrey пишет: А как..


Andrey пишет:

 цитата:
А как пробовать то ?


Ты прав.
Я бы забил на это дело и сделал своё WaitWindow

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5495
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 29.08.17 17:30. Заголовок: Andrey пишет: Вроде..


Andrey пишет:

 цитата:
Вроде осталась последняя "непонятка" в примере и всё остальное работает !


Прямоугольник присутствует на WinXP и Win7. На Win8.1 и Win10 - нет.



Как исправить ?


Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6548
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 29.08.17 18:28. Заголовок: Да , странно , косяк..


Да , странно , косяков вроде нет в MyHelpLabel() а голубой квадрат Малевича , есть :)

Цвет квадрата явно перекочевал из MyToolBar()

PS
Win-7

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5496
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 30.08.17 07:08. Заголовок: Dima пишет: Цвет кв..


Dima пишет:

 цитата:
Цвет квадрата явно перекочевал из MyToolBar()



Нет, не оттуда. Этот квадрат копия окна подсказки. Наверное как-то перерисовывается в Tsbrowse.

Я придумал как его убрать. При создании окна делаем NOSHOW:
   DEFINE WINDOW Form_Help          ; 
....
NOSHOW ;

а потом в MyPrevEditDim():
      SetProperty(cForm, "Row"    , nY )  
SetProperty(cForm, "Col" , nX )
SHOW WINDOW &cForm

И всё - заработало !!!

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5514
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 15.09.17 13:44. Заголовок: Всем привет ! Можно ..


Всем привет !
Можно ли при наведении мышкой на определённый столбец менять вид курсора (типа пальца) ?

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6579
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 15.09.17 17:40. Заголовок: Andrey Можно попроб..


Andrey
Можно попробовать через Brw:cToolTip это реализовать.

C:\MiniGUI\SAMPLES\Advanced\Tsb_calendar\demo2.prg

В блоке кода ловишь нужную колонку и меняешь форму курсора

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5515
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 15.09.17 19:36. Заголовок: Dima , СПАСИБО за на..


Dima , СПАСИБО за наводку ! Попробую...

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5528
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.09.17 12:09. Заголовок: Посмотрел пример C:&..


Посмотрел пример C:\MiniGUI\SAMPLES\Advanced\Tsb_calendar\demo2.prg
Так и не понял как к себе применить.

Есть такая таблица:


Как мне сделать следующие подсказки (oBrw:cToolTip) :
1) В колонке 2 - "Открыть + имя_файла (в колонке)", поле бд FILE1 ?
2) В колонке 5 поставить ТОЛЬКО на красную стрелку подсказку "Конвертировать", поле бд LCONV ?
3) В колонке 6 - "Открыть + имя_файла (в колонке)", поле бд FILE2 - ТОЛЬКО для тех колонок, где есть имена файлов ?

Смог сделать только так:
    cToolTip := "Открыть " 
oBrw1:cToolTip := {|oBr,nCol,nRow| oBr:=nil,IIF( nCol==2, cToolTip + HB_NtoS(nRow),;
IIF( nCol==6, cToolTip + HB_NtoS(nRow), "" ) ) }



Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5530
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 21.09.17 19:51. Заголовок: Как не изгалялся, та..


Как не изгалялся, так и не смог сделать/получить имена файлов и условие по красной стрелке.
Единственно получилось, так это чтобы cToolTip не высвечивался на условиях if( nRow > 0 .AND. nRow < oBr:nLen+1 :
     oBrw1:cToolTip := {|oBr,nCol,nRow| if( nRow > 0 .AND. nRow < oBr:nLen+1, IIF( nCol==2, "Открыть" ,; 
IIF( nCol==6, "Открыть" , IIF(nCol==5,"Конвертировать","" ) ) ),;
) }



Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 1630
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 22.09.17 14:08. Заголовок: Andrey пишет Как не ..


Andrey пишет
 цитата:
Как не изгалялся,...


 
примерно такая схема (как надо сделаешь сам)
...
DEFINE TBROWSE oBrw AT ...
...
__objAddData( oBrw, 'aRowPosRec' )
... // последними строками перед end tbrowse
If empty(oBrw:aRowPosRec)
oBrw:aRowPosRec := array(oBrw:nRowCount())
AFill(oBrw:aRowPosRec, 0)
EndIf

oBrw:bOnDrawLine := {|obr | On_DrawLine(obr) }
oBrw:cToolTip := {|obr,col,row| On_ToolTip(obr,col,row) }

END TBROWSE
...

STATIC FUNC On_DrawLine( oBr )
LOCAL nRow := If( oBr:lDrawHeaders, Max( 1, oBr:nRowPos ), oBr:nRowPos )

If oBr:lPainted
oBr:aRowPosRec[ nRow ] := (oBr:cAlias)->( RecNo() )
EndIf

RETURN Nil

STATIC FUNC On_ToolTip( oBr, nCol, nRow )
LOCAL cTxt := ''
LOCAL nRec := 0
LOCAL cAls := oBr:cAlias
LOCAL nOld := (cAls)->( RecNo() )
LOCAL cFil, nImg, cOut

If nRow > 0 .and. nRow <= Len( oBr:aRowPosRec )
nRec := oBr:aRowPosRec[ nRow ]
EndIf

If nRec > 0 .and. ( nCol == 2 .or. nCol == 5 .or. nCol == 6 )
(cAls)->( dbGoto( nRec ) )
cFil := AllTrim(Eval(oBr:GetColumn(2):bData))
cOut := AllTrim(Eval(oBr:GetColumn(6):bData))
nImg := Eval(oBr:GetColumn(5):bData) // номер image:
If empty(cOut) .or. nImg == 1 // 1 - '+', 2 - '-->'
// image стрелка
cTxt := 'Конвертировать ' + cFil
Else
// image плюсик
cTxt := 'Открыть '
cTxt += iif( nCol == 6, cOut, cFil )
EndIf
(cAls)->( dbGoto( nOld ) )
EndIf

RETURN cTxt

// Переменная DATA aRowPosRec, ее инициализация и содержимое On_DrawLine у меня
// встроено в класс TsBrowse, без назначения :bDrawLine (для упрощения работы
// с cToolTip)


Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5531
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 22.09.17 14:33. Заголовок: SergKis пишет: If ..


SergKis пишет:

 цитата:
If empty(cOut) .or. nImg == 1 // 1 - '+', 2 - '-->'
// image стрелка
cTxt := 'Конвертировать ' + cFil
Else
// image плюсик
cTxt := 'Открыть '
cTxt += iif( nCol == 6, cOut, cFil )
EndIf


Для 2 и 6 колонки нужно писать "Открыть "+ имя файла / ALLTRIM(то что стоит соответственно в колонках)
Для 5 колонки: для "+" ничего не писать, а для красной стрелке писать просто "Конвертировать"

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 1631
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 22.09.17 16:22. Заголовок: SergKis пишет STATIC..


SergKis пишет
 цитата:
STATIC FUNC On_DrawLine( oBr )


пропустил
 
STATIC FUNC On_DrawLine( oBr )
LOCAL nRow := If( oBr:lDrawHeaders, Max( 1, oBr:nRowPos ), oBr:nRowPos )

If oBr:lPainted
If nRow == 1
AFill(oBr:aRowPosRec, 0)
EndIf

oBr:aRowPosRec[ nRow ] := (oBr:cAlias)->( RecNo() )
EndIf

RETURN Nil


Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 1632
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 22.09.17 16:23. Заголовок: Andrey пишет Для 2 и..


Andrey пишет
 цитата:
Для 2 и 6 колонки нужно писать "Открыть "+ имя файла / ALLTRIM(то что стоит соответственно в колонках)
Для 5 колонки: для "+" ничего не писать, а для красной стрелке писать просто "Конвертировать"


Это все сам, как надо, так делай
 цитата:
примерно такая схема (как надо сделаешь сам)



Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5532
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 22.09.17 16:31. Заголовок: SergKis СПАСИБО БОЛЬ..


SergKis СПАСИБО БОЛЬШОЕ !

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5533
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 23.09.17 20:39. Заголовок: Всем привет ! А мож..


Всем привет !

А можно ли запретить сдвиг таблицы вправо ?
Допустим у меня есть 8 колонок в таблице, они прекрасно отображаются,
но при движении стрелкой вправо - таблица двигается и показывается пустая колонка.
Не хочу я чтобы эта пустая колонка отображалась у меня в таблице.
Как это сделать ?

Про параметр знаю :
oBrw:nAdjColumn  := 6      // растянуть колонку до заполнения пустоты в бровсе справа 



Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6595
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 24.09.17 15:21. Заголовок: Andrey пишет: Про п..


Andrey пишет:

 цитата:
Про параметр знаю :


Типа не юзаешь его ?

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5534
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 24.09.17 16:23. Заголовок: Dima пишет: Типа не..


Dima пишет:

 цитата:
Типа не юзаешь его ?


Не помогает !
Ширина таблицы на форме больше на 2 пиксела, чем сумма ширины всех колонок.
Ставлю/не ставлю этот параметр - все равно присутствует пустая колонка.
Как от неё избавиться не знаю.

Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 18
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет