Автор | Сообщение |
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:....
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|
Haz
|
| |
Пост N: 671
Зарегистрирован: 20.02.11
|
|
Отправлено: 28.09.15 11:05. Заголовок: Andrey пишет: Нашёл..
Andrey пишет: 1 Вопрос : Что сначала ? 1 Считаем размер дырки 2 Делаем все установки для бровса ( шрифты, высоты и пр ) Думаю сейчас порядок такой 1, 2 2 Вопрос : Что покажет функция GetHoleBrowse() после oBrw:Display() ?
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4528
Зарегистрирован: 12.09.06
|
|
Отправлено: 28.09.15 12:52. Заголовок: Haz пишет: 1 Вопрос..
Haz пишет: цитата: | 1 Вопрос : Что сначала ? 1 Считаем размер дырки 2 Делаем все установки для бровса ( шрифты, высоты и пр ) |
| Нет ! Делаю как положено: 1) Делаем все установки - ( шрифты, высоты и пр. ) 2) oBrw:Display() // прорисовать второй раз для подсчёта остатка дырки 3) nHole := GetHoleBrowse(oBrw) - 1 При обычном шрифте считает правильно ! При включении БФ (большого фонта) в системе - считает неправильно !
|
|
|
Haz
|
| |
Пост N: 673
Зарегистрирован: 20.02.11
|
|
Отправлено: 28.09.15 14:02. Заголовок: Andrey пишет: Нет !..
Andrey пишет: цитата: | Нет ! Делаю как положено: |
| Андрей выведи чему равно то чего не хватает: 1) cBrw:nHeight := ? 2) cBrw:nHeightHead := 75 3) cBrw:nHeightSuper := ? 4) cBrw:nHeightFoot := 22 5) cBrw:nHeightSpecHd :=? 6) cBrw:nHeightCell := 50 ЗЫ визуально горизонтальный скроллер у тебя тоже 22 ( в расчете дырки он забит как 16 , 6 пикселей не много но есть ) Остального не видно из твоей картинки. Целиком ее дай с шапкой
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4529
Зарегистрирован: 12.09.06
|
|
Отправлено: 28.09.15 17:50. Заголовок: http://f6.s.qip.ru/~..
Вот, сделал... 1) Height=516 2) HeightHead=75 3) HeightSuper=0 4) HeightFoot=22 5) HeightSpecHd=0 6) HeightCell=50 GetHoleBrowse()=3 Кол-во строк=7
|
|
|
Haz
|
| |
Пост N: 674
Зарегистрирован: 20.02.11
|
|
Отправлено: 28.09.15 18:06. Заголовок: Andrey пишет: Вот, ..
Andrey пишет: при подстановке цифирь в функцию GetHoleBrowse(... ) дает 19 а никак не 3 !! проверил - реально 3 Ищи что не так передается PS строк должно быть 8 а не 7 Скролл какой высоты ? в расчете дыры забит 16, а на кортинке явно больше чем подвал. Короче капай в сторону высоты скрола и ставь эту высоту в свою функцию, тогда должно все срастись
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4530
Зарегистрирован: 12.09.06
|
|
Отправлено: 28.09.15 23:20. Заголовок: Haz пишет: Короче к..
Haz пишет: цитата: | Короче капай в сторону высоты скрола и ставь эту высоту в свою функцию, тогда должно все срастись |
| Спасибо БОЛЬШОЕ за совет ! Получилось ! Вот функция: //////////////////////////////////////////////////////////// // высота дырки внизу таблицы перед подвалом Function GetHoleBrowse(cBrw) Local nWorkHeight, nHScroll := IIF( LargeFonts(), 24, 16) nWorkHeight := cBrw:nHeight-cBrw:nHeightHead-cBrw:nHeightSuper-; cBrw:nHeightFoot-cBrw:nHeightSpecHd-if(!cBrw:lNoHScroll,nHScroll,0) RETURN (nWorkHeight-Int(nWorkHeight/cBrw:nHeightCell)* cBrw:nHeightCell)
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4546
Зарегистрирован: 12.09.06
|
|
Отправлено: 24.10.15 15:42. Заголовок: Привет всем ! Как по..
Привет всем ! Как получить массив уже созданного суперхидера в таблице ? Поля таблицы знаю как получить. For nI := 1 To oBrw:nColCount() cPole := oBrw:aColumns[nI]:cHeading
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 832
Зарегистрирован: 17.02.12
|
|
Отправлено: 24.10.15 16:33. Заголовок: Andrey так он образ..
Andrey так он образуется: AAdd( ::aSuperHead, { nFromCol, nToCol, uHead, nClrText, nClrBack, l3dLook, hFont, uBitMap, lAdjust, nLineStyle, nClrLine, nHAlign, nVAlign, lTransp } )
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4547
Зарегистрирован: 12.09.06
|
|
Отправлено: 24.10.15 19:22. Заголовок: SergKis пишет: так ..
SergKis пишет: цитата: | так он образуется: AAdd( ::aSuperHead, { nFromCol, nToCol, uHead, nClrText, nClrBack, l3dLook, hFont, uBitMap, lAdjust, nLineStyle, nClrLine, nHAlign, nVAlign, lTransp } ) |
| А как тогда в цикле вывести значения суперхидера ?
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 833
Зарегистрирован: 17.02.12
|
|
Отправлено: 24.10.15 19:32. Заголовок: Andrey Как ты получ..
Andrey Как ты получаешь элементы массива {{...},{...},...} ? глянь MsgDebug(oBrw:aSuperHead)
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4548
Зарегистрирован: 12.09.06
|
|
Отправлено: 24.10.15 20:19. Заголовок: SergKis пишет: глян..
SergKis пишет: цитата: | глянь MsgDebug(oBrw:aSuperHead) |
| Понял ! Спасибо БОЛЬШОЕ !
|
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4555
Зарегистрирован: 12.09.06
|
|
Отправлено: 30.10.15 05:02. Заголовок: Всем привет. Как сд..
Всем привет. Как сделать вставку из буфера винды в поля таблицы по клавишам Shift+Insert ?
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 834
Зарегистрирован: 17.02.12
|
|
Отправлено: 30.10.15 19:33. Заголовок: Andrey пишет:Как сде..
Andrey пишет: цитата: | Как сделать вставку из буфера винды в поля таблицы по клавишам Shift+Insert ? |
| ... oBrw:bUserKeys := {|nKy,nFl,oBr| UserKeyDown(nKy, nFl, oBr) } ... STATIC FUNC UserKeyDown( nKey, nFlag, oBrw ) Local lRet, cBuf If nKey == VK_INSERT .and. _GetKeyState( VK_SHIFT ) cBuf := System.Clipboard // тут обработка cBuf lRet := .F. EndIf RETURN lRet
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4557
Зарегистрирован: 12.09.06
|
|
Отправлено: 31.10.15 00:34. Заголовок: Спасибо БОЛЬШОЕ ! :..
Спасибо БОЛЬШОЕ ! Только наверное это нужно делать в GET - когда ячейка уже редактируется.
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4559
Зарегистрирован: 12.09.06
|
|
Отправлено: 05.11.15 18:01. Заголовок: Как сделать в САМ..
Как сделать в САМОМ TSBROWSE при редактировании ячеек (только при УЖЕ редактировании, при наличии курсора) вставку/сохранения кармана WINDOWS как во всех других приложениях по клавишам Shift+Insert/Ctrl+Insert и Ctrl+V/Ctrl+С ?
|
|
|
Haz
|
| |
Пост N: 684
Зарегистрирован: 20.02.11
|
|
Отправлено: 05.11.15 20:27. Заголовок: Andrey пишет: Как с..
Andrey пишет: цитата: | Как сделать в САМОМ TSBROWSE при редактировании ячеек (только при УЖЕ редактировании, при наличии курсора) вставку/сохранения кармана WINDOWS как во всех других приложениях п |
| И так работает , ничего не делел
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4560
Зарегистрирован: 12.09.06
|
|
Отправлено: 05.11.15 21:27. Заголовок: Haz пишет: И так ра..
Haz пишет: цитата: | И так работает , ничего не делел |
| А у меня нет... MiniGUI\SAMPLES\Advanced\Tsb_config - в текстовое поле пытаюсть вставить что в буфере, не вставляется. А в Фаре вставляется... Где и что править ?
|
|
|
Haz
|
| |
Пост N: 685
Зарегистрирован: 20.02.11
|
|
Отправлено: 05.11.15 21:37. Заголовок: Andrey пишет: не вс..
Andrey пишет: в текстовом поле жму Enter - входит в режим GET. потом Shift+Ins CTRL+V и вставляется то что в буфере обмена было. Ничего не правил вообще, продвинутые (которым лень набирать) пользователи с этим работают не один год PS тестил именно в TSB_Config
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 4561
Зарегистрирован: 12.09.06
|
|
Отправлено: 05.11.15 21:49. Заголовок: Хрень какая то... В ..
Хрень какая то... В мемо-поле (колонка List) - всё вставляется. Если берем текстовую колонку - Ctrl+V/Ctrl+С РАБОТАЕТ, а Shift+Insert/Ctrl+Insert НЕТ.... У меня 8.1 Буду пробовать на других системах...
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 835
Зарегистрирован: 17.02.12
|
|
Отправлено: 05.11.15 21:51. Заголовок: подтверждаю Ctrl+V т..
подтверждаю Ctrl+V тоже работатет. Tsb_config
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|