Форум: "Начинающим";
Текущий архив: 2009.03.29;
Скачать: [xml.tar.bz2];
Внизне могу перести на Delphi Найти похожие ветки
← →
CodeMaster © (2009-02-06 19:14) [0]Есть вот такая вот строчка на С++ :
specbuf[y*SPECWIDTH+x]=c&1?127:1
Не могу никак разобраться как записать c&1?127:1 в Delphi помогите пожалуйста
← →
Palladin © (2009-02-06 19:17) [1]If (c and 1)=1 Then specbuf[y*SPECWIDTH+x]:=127 Else specbuf[y*SPECWIDTH+x]:=1;
← →
Anatoly Podgoretsky © (2009-02-06 19:32) [2]> CodeMaster (06.02.2009 19:14:00) [0]
if then else
← →
CodeMaster © (2009-02-06 19:35) [3]возникает ещё вопрос:
//Глобальные переменные
HDC specdc=0;
HBITMAP specbmp=0;
BYTE *specbuf;
//Кусок из функции создания окна.
BYTE data[2000]={0};
BITMAPINFOHEADER *bh=(BITMAPINFOHEADER*)data;
RGBQUAD *pal=(RGBQUAD*)(data+sizeof(*bh));
int a;
bh->biSize=sizeof(*bh);
bh->biWidth=SPECWIDTH;
bh->biHeight=SPECHEIGHT; // upside down (line 0=bottom)
bh->biPlanes=1;
bh->biBitCount=8;
bh->biClrUsed=bh->biClrImportant=256;
// setup palette
for (a=1;a<128;a++) {
pal[a].rgbGreen=256-2*a;
pal[a].rgbRed=2*a;
}
for (a=0;a<32;a++) {
pal[128+a].rgbBlue=8*a;
pal[128+32+a].rgbBlue=255;
pal[128+32+a].rgbRed=8*a;
pal[128+64+a].rgbRed=255;
pal[128+64+a].rgbBlue=8*(31-a);
pal[128+64+a].rgbGreen=8*a;
pal[128+96+a].rgbRed=255;
pal[128+96+a].rgbGreen=255;
pal[128+96+a].rgbBlue=8*a;
}
// create the bitmap
specbmp=CreateDIBSection(0,(BITMAPINFO*)bh,DIB_RGB_COLORS,(void**)&specbuf,NULL, 0);
specdc=CreateCompatibleDC(0);
SelectObject(specdc,specbmp);
← →
CodeMaster © (2009-02-06 19:36) [4]Именно возникают вопросы в следующих строках:
BYTE *specbuf;
.........
BYTE data[2000]={0};
BITMAPINFOHEADER *bh=(BITMAPINFOHEADER*)data;
RGBQUAD *pal=(RGBQUAD*)(data+sizeof(*bh));
...........
specbmp=CreateDIBSection(0,(BITMAPINFO*)bh,DIB_RGB_COLORS,(void**)&specbuf,NULL, 0);
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.03.29;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.093 c