Форум » [x]Harbour » invertattr() » Ответить

invertattr()

Dima: Смотрю что то менюхи у меня по цветам перекосило ? invertattr("bg+/b") // Clipper 177 ? invertattr("bg+/b") // Harbour 57 Как это исправить что бы invertattr() возвращал такой же результат как в Clipper ?

Ответов - 4

PSP: Когда-то тоже заметил, что палитра отличается. Ничего лучшего не придумал, кроме вот этого: [pre2] #define RGB( r, g, b ) ( r + ( g * 256 ) + ( b * 256 * 256 ) ) a := hb_gtInfo( HB_GTI_PALETTE ) a[ 1 ] := RGB( 0, 0, 0 ) // BLACK RGB( 0x0 ,0x0 ,0x0 ) a[ 2 ] := RGB( 0, 0, 133 ) // BLUE RGB( 0x0 ,0x0 ,0x85 ) a[ 3 ] := RGB( 0, 133, 0 ) // GREEN RGB( 0x0 ,0x85,0x0 ) a[ 4 ] := RGB( 0, 133, 133 ) // CYAN RGB( 0x0 ,0x85,0x85 ) a[ 5 ] := RGB( 133, 0, 0 ) // RED RGB( 0x85,0x0 ,0x0 ) a[ 6 ] := RGB( 133, 0, 133 ) // MAGENTA RGB( 0x85,0x0 ,0x85 ) a[ 7 ] := RGB( 133, 133, 0 ) // BROWN RGB( 0x85,0x85,0x0 ) a[ 8 ] := RGB( 198, 198, 198 ) // WHITE RGB( 0xC6,0xC6,0xC6 ) a[ 9 ] := RGB( 96, 96, 96 ) // LIGHT_GRAY RGB( 0x60,0x60,0x60 ) a[ 10 ] := RGB( 0, 0, 255 ) // BRIGHT_BLUE RGB( 0x00,0x00,0xFF ) a[ 11 ] := RGB( 96, 255, 96 ) // BRIGHT_GREEN RGB( 0x60,0xFF,0x60 ) a[ 12 ] := RGB( 96, 255, 255 ) // BRIGHT_CYAN RGB( 0x60,0xFF,0xFF ) a[ 13 ] := RGB( 248, 0, 38 ) // BRIGHT_RED RGB( 0xF8,0x00,0x26 ) a[ 14 ] := RGB( 255, 96, 255 ) // BRIGHT_MAGENTA RGB( 0xFF,0x60,0xFF ) a[ 15 ] := RGB( 255, 255, 0 ) // YELLOW RGB( 0xFF,0xFF,0x00 ) a[ 16 ] := RGB( 255, 255, 255 ) // BRIGHT_WHITE RGB( 0xFF,0xFF,0xFF ) hb_gtInfo( HB_GTI_PALETTE, a ) [/pre2] Меня устроило. ps. Терминал GTWVT

Dima: PSP У меня GTWIN. Похоже вот такой фокус работает ;)Dima пишет: ? invertattr("bg+/b") // Harbour 57 ? invertattr("bg+/b")+120

Dima: Dima пишет: ? invertattr("bg+/b")+120 неа не прав я... не всегда такая зависимость


Dima: Dima пишет: ? invertattr("bg+/b")+120 выкрутился. можно анализировать строку цвета , если в нее входит + перед / тогда добавляем 120



полная версия страницы