Отправлено: 15.11.11 21:36. Заголовок: Примеры из Минигуи -ошибки, вопросы..... (продолжение)
Всем привет. Взялся смотреть примеры из МиниГуи, так не все работают. Может кто подскажет что там "допилить" нужно ? А заодно может и исправить и добавить новые....
Очень красочный пример: \MiniGUI\SAMPLES\Advanced\AVI_Animation - не работает под Win7 (наверно AVI-шки нет в ресурсах) Предложение Григорию: Можно ли добавить еще один пример с отдельным AVI-файлом в ресурсах проекта и показом такого же бегунка ?
Пример: \MiniGUI\SAMPLES\Advanced\DisplayMode - не работает под ХР и далее....
Пропустил наверное... Пока сам на грабли не налетел, не запомнишь ! СПАСИБО, понял.
А в C# (он называется GroupBox) на любых темах цвет заголовка FRAME можно делать любым... Вот пример - https://cloud.mail.ru/public/Ba8K/kzjVDx7tc Может можно как нибудь сделать изменение цвета заголовка и для МиниГуи ? Это не срочно, но чтобы было такое в МиниГуи.
Посмотри функцию MyFrame() в примере из папки samples\Basic\LABEL_3
Посмотрел... Что-то не совсем понятно как прицепить эту функцию в модуль Form_fonts.prg проекта Tsb_composite ? Там несколько FRAME и имена объектов разные.
Отправлено: 06.11.19 17:48. Заголовок: Вроде получилось сде..
Вроде получилось сделать несколько FRAME через функцию MyFrame(), но пришлось убрать имя и размер фонта в этой функции. И не по центру текста проходиь полоса, но пойдёт и так ! Спасибо Григорий !
Отправлено: 12.11.19 15:13. Заголовок: Всем привет ! Вот чт..
Всем привет ! Вот что за ерунда получается, как юзер добивается ошибки в работающей программе ? Пробовал сам - не вылетает, а юзер что-то делает и вылетает. Вот например такая ошибка: Error MGERROR/0 Window: Form_Dim is already defined. Program terminated. Called from MSGMINIGUIERROR(100) in module: h_error.prg Called from _DEFINEMODALWINDOW(487) in module: h_windows.prg Called from FORM_SEL_DIM(632) in module: Source\Sel_Dim_Hmg.prg Called from SEL_DIM(561) in module: Source\Sel_Dim_Hmg.prg В исходнике все правильно, у меня работает без ошибок:
Как расшифровать ошибку ? Может доп.отладку какую то сделать ? Окно Form_Dim только в ОДНОМ исходнике, и оно MODAL, т.е. другое окно не сделаешь, пока это окно не закроешь. Или я чего-то не до понимаю ?
Я в терминалке сделал второй поток и отслеживаю нажатые клавиши и сохраняю изменения экрана, имитирую видеопоток. Сохраняю все в базу, потом можно просматривать что делал пользователь, что нажимал в какой момент времени, снимок состояния базы и т.д. Иногда помогает понять что накосячили, да и подловить недобросовестных пользователей можно.... Наверное в гуи более затратно будте вести постоянную запись, но последние минуту -другую до вылета проги можно сохранять и выкладывать на ftp например
Отправлено: 20.11.19 17:12. Заголовок: Andrey пишет: Вот н..
Andrey пишет:
цитата:
Вот например такая ошибка: Error MGERROR/0 Window: Form_Dim is already defined. Program terminated. Called from MSGMINIGUIERROR(100) in module: h_error.prg Called from _DEFINEMODALWINDOW(487) in module: h_windows.prg Called from FORM_SEL_DIM(632) in module: Source\Sel_Dim_Hmg.prg
Вроде разобрался с подсказки Сергея - почему так выходит, т.е. юзер ловит ошибку, а я нет . У меня система Win8.1, у юзера Win7 и WinServer2008. Юзер по кнопке успевает 2 раза кликнуть по мышке и 2 раза вызвать модальное окно с одинаковым именем. У меня так не получается... Сделал теперь в кнопке так:
Отправлено: 29.11.19 10:25. Заголовок: Всем привет ! в прим..
Всем привет ! в примере \MiniGUI\SAMPLES\Advanced\Tsb_array_2\demo.prg, если увеличить количество колонок (раза в 3, выход за ширину TSBROWS) и после запуска программы на горизонтальном SCRLLBAR удерживать кнопку движения вправо, всё подвисает. Может кто то подскажет как побороть ?
Отправлено: 29.11.19 12:39. Заголовок: kkg пишет и после за..
kkg пишет
цитата:
и после запуска программы на горизонтальном SCRLLBAR удерживать кнопку движения вправо, всё подвисает
Попробуйте сделать для колонок (при быстром скролинге не успевает за ним прорисовка тсб) AEval( oBrw:aColumns, {|oc| oc:bGotFocus := {|| DoEvents() } } ) Если не поможет, то надо уменьшать количество колонок в просмотре, используя oc:Visible := .F. для скрытия и показываете, сгруппировав частями, переключая по выбору на нужную группу.
Отправлено: 30.11.19 09:31. Заголовок: kkg пишет с SQLMIX ..
kkg пишет
цитата:
с SQLMIX и с массивом, результат всё равно крах
Правильнее, по мне, отработать счетчиками нажатия (+) и отпускания (сброс) клавиш VK_LEFT, VK_RIGHT, т.е. если, к примеру, счетчик нажатий будет > 5, то не делать :GoLeft(), :GoRight() пока не отпустят или не закончится прорисовка тсб. Похожая схема работает в моей версии (7+часть из 9) тсб при VK_UP, VK_DOWN, нажатиях, если их >= :nRowCount(), то делаю листание страницы, вместо движения построчно. Таким образом обхожу зависание прорисовки в 7ой версии тсб.
на этом примере да , но на примере из поставки с массивом + nFreeze на счётчиках не работает (по крайней мере у меня не получается), только с временной задержкой Скрытый текст
Отправлено: 30.11.19 21:44. Заголовок: kkg пишет на этом пр..
kkg пишет
цитата:
на этом примере да , но на примере из поставки с массивом + nFreeze на счётчиках не работает (по крайней мере у меня не получается), только с временной задержкой
Уменьшите значение Static n_CntLeft := 0, n_CntRight := 0, n_LeftRight := 3 Вот пример Tsb_Array_2 с учетом :nFreeze Скрытый текст
#include "minigui.ch" #include "TSBrowse.ch"
PROCEDURE MAIN
LOCAL oBrw, aDatos, aArray, aHead, aSize, aFoot, aPict, aAlign, aName, aFontHF LOCAL aFont := {} // Local hFontHead, hFontFoot LOCAL cFontName := _HMG_DefaultFontName LOCAL nFontSize := 11
SET DECIMALS TO 4 SET DATE TO GERMAN SET EPOCH TO 2000 SET CENTURY ON SET EXACT ON
DEFINE FONT Font_1 FONTNAME cFontName SIZE nFontSize DEFINE FONT Font_2 FONTNAME cFontName SIZE nFontSize BOLD
Отправлено: 01.12.19 00:39. Заголовок: kkg пишет так всё ра..
kkg пишет
цитата:
так всё равно виснет если двигать зажатой кнопкой скрола в право
В моей сборки вправо и влево зажатый скролл работает по всей линейке и не виснет (hmg 19.09.2 сборка) Если виснет у вас, то можно пробовать обработку сообщения WM_HSCROLL (цветом выделено)
function tsb_events( oBrw, nMsg, nWParam, nLParam ) Local nRet := 0, nKey, nFlag, nCol, nFrez Local lCtrl := _GetKeyState( VK_CONTROL ) Local lShift := _GetKeyState( VK_SHIFT ) Local lAlt := _GetKeyState( VK_MENU ) Static n_CntLeft := 0, n_CntRight := 0, n_LeftRight := 3
Если скролл побежал до конца\начала, надо пощелкать по тсб мышкой, для активации тсб или по полунку скролла Причину такого поведения надо искать, разбирать тсб и скролл работу
Все даты в формате GMT
3 час. Хитов сегодня: 11
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет