Изменение логической палитры на vb6

  • Автор темы alexandr777
  • Дата начала
A

alexandr777

Нужен конкретный и РАБОТАЮЩИЙ коротенький и наглядный пример (код) использования API - функции SetPaletteEntries
DECLARE FUNCTION SetPaletteEntries LIB "GDI32.DLL" ALIAS "SetPaletteEntries" (BYVAL hPalette AS DWORD, BYVAL wStartIndex AS DWORD, BYVAL wNumEntries AS DWORD, lpPaletteEntries AS PALETTEENTRY) AS DWORD
на языке VB6 или Power Basic Console Compiler 5.0 или выше.
Типа: Рисуем рисунок любой примитивный (методом LINE и т. д.) в графическом окне (для PBCC 5.0 или выше) или форме(PictureBox, Image) для VB6 какими-нибудь цветами. А потом меняем программно с помощью API - функции SetPaletteEntries логическую палитру для 256 цветов (именно 256!) и выводим тот же рисунок точно так же как и до того. Но он уже будет(должен), очевидно, отображаться другой палитрой красок. И всё, больше ничего!
Главное:
1) Где и как конкретно брать хэндл палитры hPalette? (это самое непонятное)
2) wStartIndex = 0
3) wNumEntries = 256
4) Заполнить структуру lpPaletteEntries какими-нибудь произвольными (RND) кодами цветов (0-255) в цикле и поместить структуру (указатель на неё, первый элемент) в API-функцию.
И чтобы это реально РАБОТАЛО именно для VB6 или PBCC 5.0 или выше (примеры на С++ и Дельфи абсолютно мимо, НЕ НАДО!)
Жду конкретный РАБОТАЮЩИЙ код!!!
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!