Автор | Сообщение |
gfilatov
|
| модератор
|
Пост N: 699
Зарегистрирован: 25.05.05
|
|
Отправлено: 29.01.08 13:59. Заголовок: Новая версия Расширенного релиза библиотеки MiniGUI (часть VI ) (продолжение)
Начало темы находится здесь, а теперь АНОНС * АНОНС * АНОНС * АНОНС * АНОНС Готовится к опубликованию новая сборка №48, которая выйдет в конце недели. Если у Вас есть интересные наработки для включения в новый релиз, то сейчас самое удобное время для их отправки мне Кратко, что нового: - исправление обнаруженных ошибок и неточностей кода; - новый класс HEADERIMAGE для Grid и Browse; - свойство Address в Hyperlink может теперь открывать папку или файл на диске; - добавлен NOTABSTOP класс для Browse; - поддержка пользовательских компонентов (заимствована из оффициального релиза); - расширения и исправления в библиотеках TsBrowse и PropGrid; - обновлены сборки Харбор и HMGS-IDE; - новые и обновленные старые примеры (как обычно ).
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|
gfilatov2002
|
| moderator
|
Пост N: 1020
Зарегистрирован: 11.02.10
|
|
Отправлено: 25.10.16 15:00. Заголовок: SergKis пишет: на э..
SergKis пишет: цитата: | на этапе отображения даты в колонки, правая цифра частично под линией |
| Благодарю за наводку! Поправил эту бяку следующим образом: цитата: | nSize := Int( GetTextWidth( 0, cData + "B", hFont ) ) + If( lEditable, 30, 0 ) |
| Мой пример для проверки см. ниже Скрытый текст
#include "minigui.ch" #include "tsbrowse.ch" REQUEST SQLMIX Procedure Main() SET CENTURY ON DEFINE WINDOW Form1 ; AT 0,0 ; WIDTH (RR_GetDesktopArea()[4] * 0.99) ; HEIGHT (RR_GetDesktopArea()[3] * 0.91) ; TITLE "TsBrowse Array Test" ; MAIN ; FONT 'Tahoma' SIZE 9 END WINDOW Test() Form1.Center Form1.ACTIVATE Return *-------------------------------------------------------------- Function Test() local i := 0 local j := 0 Local aStr := {} local cAlias := "TEST" local cBrw := "BRW" PUBLIC &cBrw FOR j := 1 TO 30 AADD( aStr, {"F_" + NTOC(j) , "D", 8, 0 } ) NEXT rddSetDefault( "SQLMIX" ) dbCreate( cAlias, aStr,, .T., cAlias ) FOR i := 1 TO 100 (cAlias)->( DbAppend() ) FOR j := 1 TO 30 (cAlias)->( FieldPut(j, Date()) ) NEXT NEXT rddSetDefault( "SQLMIX" ) DEFINE TBROWSE &cBrw ; At 20, 5 ; ALIAS cAlias ; OF Form1 ; WIDTH (Form1.Width - 20) ; HEIGHT (Form1.Height - 70) ; COLORS { CLR_BLACK, CLR_BLUE } ; FONT "MS Sans Serif" ; SIZE 8 ; CELL; SELECTOR .T. END TBROWSE &cBrw:LoadFields( FALSE ) Return Nil
|
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1244
Зарегистрирован: 17.02.12
|
|
Отправлено: 25.10.16 15:02. Заголовок: Dima пишет obrw:Get..
Dima пишет цитата: | obrw:GetColumn("naim"):bPrevEdit := { |a, b, lLock| SetGetAdjustBrw(b,{2,0,-2,-3})............... |
| Может с учетом Edit, надо не пробел, а ширину цифры или буквы добавлять ?
|
|
|
Dima
|
| |
Пост N: 6065
Зарегистрирован: 17.05.05
|
|
Отправлено: 25.10.16 15:29. Заголовок: SergKis пишет: Може..
SergKis пишет: цитата: | Может с учетом Edit, надо не пробел, а ширину цифры или буквы добавлять ? |
| Сергей это ты мне или Григорию адресовал ? Если мне , то этот фокус нужен что бы при входе и последующем выходе из режима редактирования не съедалась сетка грида , по периметру ячейки.
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1245
Зарегистрирован: 17.02.12
|
|
Отправлено: 25.10.16 15:37. Заголовок: Дима пишет Сергей эт..
Дима пишет цитата: | Сергей это ты мне или Григорию адресовал ? |
| Это пока я вопрос набирал, Григорий уже реализовал.
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1246
Зарегистрирован: 17.02.12
|
|
Отправлено: 25.10.16 15:58. Заголовок: gfilatov2002 Вспомн..
gfilatov2002 Вспомнил (посмотрел), как делал в своей версии nSize := Int( GetTextWidth( 0, StrTran(CtoD(""), " ", "9")+"B", hFont ) ) + If( lEditable, 22, 0 )
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1247
Зарегистрирован: 17.02.12
|
|
Отправлено: 25.10.16 16:19. Заголовок: PS Уже заработался, ..
PS Уже заработался, у меня через xVal промежуточную, убирал и пропустил. cValToChar(xVal), т.е. nSize := Int( GetTextWidth( 0, StrTran(cValToChar(CtoD("")), " ", "9")+"B", hFont ) ) + If( lEditable, 22, 0 )
|
|
|
SergKis
|
| постоянный участник
|
Пост N: 1248
Зарегистрирован: 17.02.12
|
|
Отправлено: 29.10.16 00:39. Заголовок: gfilatov2002 можно ..
gfilatov2002 можно пару добавок Method AddSuperHead( nFromCol, nToCol, uHead, nHeight, aColors, l3dLook, uFont, uBitMap, lAdjust, lTransp, ; lNoLines, nHAlign, nVAlign ) CLASS TSBrowse ... uHead := "" If Valtype(nFromCol) == "C" nFromCol := ::nColumn(nFromCol) EndIf If Valtype(nToCol) == "C" nToCol := ::nColumn(nToCol) EndIf uFont := If( uFont != Nil, If( ValType( uFont ) == "O", uFont:hFont, uFont ), uFont ) If ! Empty( ::aColumns ) ... METHOD InsColumn( nPos, oColumn ) CLASS TSBrowse ... If oColumn == Nil // if no Column object supplied Return Nil // return nil insted of reference to object EndIf If Valtype(nPos) == "C" nPos := ::nColumn(nPos) EndIf If nPos < 1 nPos := 1 ...
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1022
Зарегистрирован: 11.02.10
|
|
Отправлено: 29.10.16 21:00. Заголовок: SergKis пишет: можн..
SergKis пишет: Не вопрос! Конечно, добавлю в следующую сборку
|
|
|
Dima
|
| |
Пост N: 6081
Зарегистрирован: 17.05.05
|
|
Отправлено: 09.11.16 17:24. Заголовок: gfilatov2002 Какой ..
gfilatov2002 Какой то не понятный глюк в 16.10 под MINGW , если в сырце прописать REQUEST HB_LANG_RUWIN то программу не собрать , в 16.06 было все нормально. Под BCC55 в 16.10 этой проблемы нет.
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1026
Зарегистрирован: 11.02.10
|
|
Отправлено: 09.11.16 17:59. Заголовок: Dima пишет: REQUEST..
Dima пишет: цитата: | REQUEST HB_LANG_RUWIN то программу не собрать , в 16.06 было все нормально. |
| Это происки Виктора в его Harbour 3.4 Попробуй добавить такой код #include "hbextcdp.ch" #include "hbextlng.ch" PROCEDURE HB_LANG_RUWIN() ; RETURN и отпишись, если помогло
|
|
|
Dima
|
| |
Пост N: 6083
Зарегистрирован: 17.05.05
|
|
Отправлено: 09.11.16 18:03. Заголовок: gfilatov2002 Собрал..
gfilatov2002 Собралось , но при запуске упало на этой строке HB_LANGSELECT( "RUWIN" ) ранее было все хорошо
|
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1027
Зарегистрирован: 11.02.10
|
|
Отправлено: 09.11.16 18:30. Заголовок: Dima пишет: HB_LANG..
Dima пишет: Попробуй вызывать эту функцию так
|
|
|
Dima
|
| |
Пост N: 6084
Зарегистрирован: 17.05.05
|
|
Отправлено: 09.11.16 18:38. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Попробуй вызывать эту функцию так |
| Да так работает. Спасибо ! А почему такая разница между сборкой под BCC и MINGW ? Под BCC все работает как и ранее а под MINGW какие то костыли нужно ставить...... И еще вопрос , EXE собранные в 16.10 под MINGW , не жмутся UPX 3.91w , он их не понимает. Чем можно заменить UPX ?
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1317
Зарегистрирован: 09.10.06
|
|
Отправлено: 09.11.16 20:36. Заголовок: Dima пишет: А почем..
Dima пишет: цитата: | А почему такая разница между сборкой под BCC и MINGW ? Под BCC все работает как и ранее а под MINGW какие то костыли нужно ставить |
| Можно я отвечу? 1) Это еще смотреть надо где костыль 2) MiniGUI изначально заточен под bcc, все остальное overhead А зачем их жать?
|
|
|
Dima
|
| |
Пост N: 6089
Зарегистрирован: 17.05.05
|
|
Отправлено: 09.11.16 22:23. Заголовок: Петр пишет: 2) Mini..
Петр пишет: цитата: | 2) MiniGUI изначально заточен под bcc, все остальное overhead |
| Может и так и стоит вернуться на него , но там есть ограничения на формат и размер файлов в ресурсах , если мне память не изменяет. Петр пишет: Кто его знает :) Вычитал в инете и натыкался не раз что лучше жать , так как по сети EXE грузится быстрее , я конечно понимаю что нужно еще время и на распаковку в памяти. С секундомером не мерял и просто принял за истину что так лучше.........
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1029
Зарегистрирован: 11.02.10
|
|
Отправлено: 10.11.16 11:52. Заголовок: Dima пишет: Под BCC..
Dima пишет: цитата: | Под BCC все работает как и ранее а под MINGW какие то костыли нужно |
| Поправил установку русского, немецкого и т.д. языков для MinGw-сборок на базе форка Harbour 3.4 Кстати, для испанского, португальского и итальянского языков ничего исправлять не потребовалось (это объясняет, почему не было сообщений об этой проблеме в MinGw-сборках ранее)
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5163
Зарегистрирован: 12.09.06
|
|
Отправлено: 10.11.16 16:36. Заголовок: Всем привет ! Нашёл ..
Всем привет ! Нашёл косяк... Создаём цветное окно, размещаем на нем цветные Label - всё работает отлично, но если перед окном ставим: SET EVENTS FUNCTION TO MYEVENTS Цвета у Label не меняются и TRANSPARENT не работает... Протестил и на MiniGUI\SAMPLES\Applications\RunCmd Вот так это выглядит: Как сделать, чтобы заработало ?
|
|
|
gfilatov2002
|
| moderator
|
Пост N: 1030
Зарегистрирован: 11.02.10
|
|
Отправлено: 10.11.16 17:16. Заголовок: Andrey пишет: Как с..
Andrey пишет: цитата: | Как сделать, чтобы заработало ? |
| В функции MyEvents() надо записать вызов Events() следующим образом цитата: | Return Events ( hWnd, nMsg, wParam, lParam ) |
| Отпишись, если это помогло
|
|
|
Andrey
|
| постоянный участник
|
Пост N: 5164
Зарегистрирован: 12.09.06
|
|
Отправлено: 10.11.16 17:21. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Отпишись, если это помогло |
| Да, помогло ! Спасибо ! Делал по твоему примеру: otherwise Events ( hWnd, nMsg, wParam, lParam ) endcase Return (0)
|
|
|
Петр
|
| постоянный участник
|
Пост N: 1318
Зарегистрирован: 09.10.06
|
|
Отправлено: 10.11.16 17:29. Заголовок: Andrey пишет: Как с..
Andrey пишет: цитата: | Как сделать, чтобы заработало ? |
| Напишите корректный обработчик MYEVENTS, не перехватывайте ненужные события, перенаправьте их стандартному обработчику HMG (если, что Events() называется). Опять задание для телепатов. P.S. Григорий таки делает успехи в этом деле.
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|