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




Пост N: 6631
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 26.04.20 10:54. Заголовок: CONTEXT MENU и темная тема


Всем привет !
Сейчас в МиниГуи CONTEXT MENU 2х типов: стандартный и расширенная.



А возможно цвет поменять, как у других ?
Вот так допустим:


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 6 [только новые]


администратор




Пост N: 1543
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 26.04.20 12:53. Заголовок: Andrey пишет: А воз..


Andrey пишет:

 цитата:
А возможно цвет поменять, как у других ?


можно на все меню. Петр 4 года назад все сделал. в примеры. MenuEx

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




Пост N: 6632
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 26.04.20 17:10. Заголовок: Haz пишет: можно на..


Haz пишет:

 цитата:
можно на все меню. Петр 4 года назад все сделал. в примеры. MenuEx



Спасибо !
Пример видел уже давно, но пропустил смену тем.

Григорий, а можешь в пример добавить ТЕМНУЮ тему ?
Чтобы все могли пользоваться.
			ITEM "Dark 2020 theme" ACTION SetThemes( 3 ) NAME Theme3

А как у себя в проге пользоваться темами ?
Тащить к себе в проект эту процедуру:
/*STATIC*/ PROCEDURE SetThemes( type )


Попробовал так:
 
SetThemes( 2 )
SetProperty( cForm, "Theme2", "Enabled", IsExtendedMenuStyleActive() )

DEFINE CONTEXT MENU OF &cForm

Не работает, вылет по ошибке:
 
Error MGERROR/0 Control: Theme2 Of test Not defined. Program terminated.
--------------------------------- Stack Trace ---------------------------------
Called from MSGMINIGUIERROR(100) in module: h_error.prg
Called from SETPROPERTY(4005) in module: h_controlmisc.prg
Called from MYCELLCLICK(158) in module: demo4.prg
Called from (b)MYCLICKTSB(93) in module: demo4.prg
Called from TSBROWSE:LBUTTONDOWN(8470) in module: h_tbrowse.prg
Called from TCONTROL:HANDLEEVENT(907) in module: TControl.prg
Called from TSBROWSE:HANDLEEVENT(8975) in module: h_tbrowse.prg

Понимаю что сам не объявил "Theme2", но не знаю как.
Помогите пожалуйста.

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1679
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 26.04.20 18:15. Заголовок: Andrey пишет: можеш..


Andrey пишет:

 цитата:
можешь в пример добавить ТЕМНУЮ тему ?


Так подойдет



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




Пост N: 6633
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 26.04.20 20:05. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Так подойдет


Да, отлично !
Только фонт сделать совсем белым на активном курсоре (или мне не видно что на картинке).

А как включить в свои программы эту тему.
У меня не получается. Выше описал.

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 1680
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 26.04.20 21:22. Заголовок: Andrey пишет: как в..


Andrey пишет:

 цитата:
как включить в свои программы эту тему


На примере menudemo2 из папки samples\Basic\Menu

 цитата:
/* 
* MiniGUI Menu Demo
*/

#include "minigui.ch"

PROCEDURE Main

LOCAL n
LOCAL m_char

SET MENUSTYLE EXTENDED

DEFINE WINDOW Win_1 ;
AT 0, 0 ;
WIDTH 400 ;
HEIGHT 400 ;
TITLE 'Menu Demo 2' ;
MAIN

DEFINE MAIN MENU
POPUP "&Option"

FOR n := 1 TO 3
m_char := StrZero( n, 2 )
MENUITEM 'EXE ' + m_char ACTION MenuProc() NAME &m_char
NEXT

END POPUP
END MENU

IF IsExtendedMenuStyleActive()
SetThemes(3)
ENDIF

END WINDOW

ACTIVATE WINDOW Win_1

RETURN


PROCEDURE MenuProc()

IF This.Name == '01'
MsgInfo ( _HMG_aControlCaption[ This.Index ] )
ELSEIF This.Name == '02'
MsgInfo ( This.Caption )
ELSEIF This.Name == '03'
MsgInfo ( 'Action 03' )
ENDIF

RETURN


Результат - на картинке



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




Пост N: 6634
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 27.04.20 06:08. Заголовок: Спасибо ! Получилось..


Спасибо !
Получилось.
Добавил в пример Tsb_Сlipboard из MiniGUI\SAMPLES\Advanced\MenuEx
STATIC PROCEDURE SetThemes( type ) 
.....

Внес изменения в функцию:
STATIC FUNCTION MyCellClick()   
....
SET MENUSTYLE EXTENDED // switch menu style to advanced
SetMenuBitmapHeight( 32 ) // set icon size 32x32

SetThemes(2)

DEFINE CONTEXT MENU OF &cForm
...

И заработало !
Только можно код PROCEDURE SetThemes( type ) внести в саму библиотеку МиниГуи ?
Чтобы не таскать его каждый раз в примеры.
Кто захочет поменять, тот добавит к себе эту функцию к себе.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 219
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет