/// <summary> /// Инициализация физического монитора. Автоматически создается логический монитор с именем MAIN (последнее не реализовано) /// </summary> /// <param name="Spl">Splash-изображение, выводимое при инициализации монитора. Если не задано, то монитор просто очищается.</param> /// <param name="KeyProcessor">Ссылка на метод - процессор, обрабатывающий нажатия клавиш на мониторе клавиатуры</param> /// <returns>"Истина" в случае успешной инициализации.</returns> public static bool InitLogitechMonitor(Bitmap Spl = null, LogitechLCDKeyProcessor KeyProcessor = null) { var res = false; //-- если растр не задан - используем очистку if (Spl == null) { SplashBmp = Properties.Resources.cls; } else { SplashBmp = Spl; } //-- установка процессора, если он не задан, (по умолчанию), то и эффекта не будет KeyProcessorMetod = KeyProcessor; IsMonitorInit = TryInitLogitechMonitor(); //-- если монитор вообще подсоединен, то .. if (IsMonitorInit) { //-- пытаемся его инициализировать if (LogitechSDK.LogiLcdIsConnected(LogitechSDK.LOGI_LCD_TYPE_MONO)) { //-- запуск таймера опроса состояния нажатий кнопок на экране клавиатуры lcdButtonsTimer.Change(1000, 250); // LogitechSDK.LogiLcdMonoSetBackground(BitmapToByteRgbNaive(SplashBmp)); LogitechSDK.LogiLcdMonoSetBackground(BitmapToByteRgb(SplashBmp)); LogitechSDK.LogiLcdUpdate(LogitechSDK.LOGI_LCD_TYPE_MONO); //--создание основного логического монитора. //MMS.Add("MAIN", new MonitorMONO(Spl) { Active=true }); } res = true; } return(res); }
/// <summary> /// Отображение битовой матрицы на экране монитора /// </summary> /// <param name="View"></param> public static void Paint(byte[] View) { if (IsMonitorInit) { try { LogitechSDK.LogiLcdMonoSetBackground(View); LogitechSDK.LogiLcdUpdate(LogitechSDK.LOGI_LCD_TYPE_MONO); } catch (Exception e) { //throw; } } }
/// <summary> /// Очистка физического монитора /// </summary> public static void ClearMonitor() { SplashBmp = Properties.Resources.cls; //-- если монитор вообще подсоединен, то .. if (IsMonitorInit) { { try { LogitechSDK.LogiLcdMonoSetBackground(BitmapToByteRgb(SplashBmp)); LogitechSDK.LogiLcdUpdate(LogitechSDK.LOGI_LCD_TYPE_MONO); } catch (Exception e) { } } } }