您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ GetObjectW函数代码示例

51自学网 2021-06-01 21:11:53
  C++
这篇教程C++ GetObjectW函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中GetObjectW函数的典型用法代码示例。如果您正苦于以下问题:C++ GetObjectW函数的具体用法?C++ GetObjectW怎么用?C++ GetObjectW使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了GetObjectW函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: Test_Pen

voidTest_Pen(void){    LOGPEN logpen;    HPEN hPen;    FillMemory(&logpen, sizeof(LOGPEN), 0x77);    hPen = CreatePen(PS_SOLID, 3, RGB(4,5,6));    ok(hPen != 0, "CreatePen failed, skipping tests./n");    if (!hPen) return;    SetLastError(ERROR_SUCCESS);    ok(GetObjectA((HANDLE)GDI_OBJECT_TYPE_PEN, 0, NULL) == sizeof(LOGPEN), "/n");    ok(GetObjectW((HANDLE)GDI_OBJECT_TYPE_PEN, 0, NULL) == sizeof(LOGPEN), "/n");    ok(GetObject(hPen, sizeof(BITMAP), NULL) == sizeof(LOGPEN), "/n");    ok(GetObject(hPen, 0, NULL) == sizeof(LOGPEN), "/n");    ok(GetObject(hPen, 5, NULL) == sizeof(LOGPEN), "/n");    ok(GetObject(hPen, -5, NULL) == sizeof(LOGPEN), "/n");    ok(GetObject(hPen, sizeof(LOGPEN), &logpen) == sizeof(LOGPEN), "/n");    ok(GetObject(hPen, sizeof(LOGPEN)-1, &logpen) == 0, "/n");    ok(GetObject(hPen, sizeof(LOGPEN)+2, &logpen) == sizeof(LOGPEN), "/n");    ok(GetObject(hPen, 0, &logpen) == 0, "/n");    ok(GetObject(hPen, -5, &logpen) == sizeof(LOGPEN), "/n");    //ok(GetLastError() == ERROR_SUCCESS, "/n"); fails on win7    /* test if the fields are filled correctly */    ok(logpen.lopnStyle == PS_SOLID, "/n");    ok(GetObjectW((HANDLE)GDI_OBJECT_TYPE_PEN, sizeof(LOGPEN), &logpen) == 0, "/n");    ok(GetLastError() == ERROR_INVALID_PARAMETER, "expected ERROR_INVALID_PARAMETER, got %ld/n", GetLastError());    DeleteObject(hPen);}
开发者ID:GYGit,项目名称:reactos,代码行数:32,


示例2: EMFDRV_CreatePenIndirect

/****************************************************************** *         EMFDRV_CreatePenIndirect */static DWORD EMFDRV_CreatePenIndirect(PHYSDEV dev, HPEN hPen){    EMRCREATEPEN emr;    DWORD index = 0;    if (!GetObjectW( hPen, sizeof(emr.lopn), &emr.lopn ))    {        /* must be an extended pen */        EXTLOGPEN *elp;        INT size = GetObjectW( hPen, 0, NULL );        if (!size) return 0;        elp = HeapAlloc( GetProcessHeap(), 0, size );        GetObjectW( hPen, size, elp );        /* FIXME: add support for user style pens */        emr.lopn.lopnStyle = elp->elpPenStyle;        emr.lopn.lopnWidth.x = elp->elpWidth;        emr.lopn.lopnWidth.y = 0;        emr.lopn.lopnColor = elp->elpColor;        HeapFree( GetProcessHeap(), 0, elp );    }    emr.emr.iType = EMR_CREATEPEN;    emr.emr.nSize = sizeof(emr);    emr.ihPen = index = EMFDRV_AddHandle( dev, hPen );    if(!EMFDRV_WriteRecord( dev, &emr.emr ))        index = 0;    return index;}
开发者ID:AmesianX,项目名称:RosWine,代码行数:36,


示例3: ME_MakeFirstParagraph

void ME_MakeFirstParagraph(ME_TextEditor *editor){  ME_Context c;  CHARFORMAT2W cf;  LOGFONTW lf;  HFONT hf;  ME_TextBuffer *text = editor->pBuffer;  ME_DisplayItem *para = make_para(editor);  ME_DisplayItem *run;  ME_Style *style;  int eol_len;  WCHAR cr_lf[] = {'/r','/n',0};  ME_InitContext(&c, editor, ITextHost_TxGetDC(editor->texthost));  hf = GetStockObject(SYSTEM_FONT);  assert(hf);  GetObjectW(hf, sizeof(LOGFONTW), &lf);  ZeroMemory(&cf, sizeof(cf));  cf.cbSize = sizeof(cf);  cf.dwMask = CFM_BACKCOLOR|CFM_COLOR|CFM_FACE|CFM_SIZE|CFM_CHARSET;  cf.dwMask |= CFM_ALLCAPS|CFM_BOLD|CFM_DISABLED|CFM_EMBOSS|CFM_HIDDEN;  cf.dwMask |= CFM_IMPRINT|CFM_ITALIC|CFM_LINK|CFM_OUTLINE|CFM_PROTECTED;  cf.dwMask |= CFM_REVISED|CFM_SHADOW|CFM_SMALLCAPS|CFM_STRIKEOUT;  cf.dwMask |= CFM_SUBSCRIPT|CFM_UNDERLINETYPE|CFM_WEIGHT;    cf.dwEffects = CFE_AUTOCOLOR | CFE_AUTOBACKCOLOR;  lstrcpyW(cf.szFaceName, lf.lfFaceName);  /* Convert system font height from logical units to twips for cf.yHeight */  cf.yHeight = (lf.lfHeight * 72 * 1440) / (c.dpi.cy * c.dpi.cy);  if (lf.lfWeight > FW_NORMAL) cf.dwEffects |= CFE_BOLD;  cf.wWeight = lf.lfWeight;  if (lf.lfItalic) cf.dwEffects |= CFE_ITALIC;  cf.bUnderlineType = (lf.lfUnderline) ? CFU_CF1UNDERLINE : CFU_UNDERLINENONE;  if (lf.lfStrikeOut) cf.dwEffects |= CFE_STRIKEOUT;  cf.bPitchAndFamily = lf.lfPitchAndFamily;  cf.bCharSet = lf.lfCharSet;  style = ME_MakeStyle(&cf);  text->pDefaultStyle = style;  eol_len = editor->bEmulateVersion10 ? 2 : 1;  para->member.para.text = ME_MakeStringN( cr_lf, eol_len );  run = ME_MakeRun(style, MERF_ENDPARA);  run->member.run.nCharOfs = 0;  run->member.run.len = eol_len;  run->member.run.para = &para->member.para;  ME_InsertBefore(text->pLast, para);  ME_InsertBefore(text->pLast, run);  para->member.para.prev_para = text->pFirst;  para->member.para.next_para = text->pLast;  text->pFirst->member.para.next_para = para;  text->pLast->member.para.prev_para = para;  text->pLast->member.para.nCharOfs = editor->bEmulateVersion10 ? 2 : 1;  ME_DestroyContext(&c);}
开发者ID:AmesianX,项目名称:wine,代码行数:60,


示例4: gdiinterop_CreateFontFaceFromHdc

static HRESULT WINAPI gdiinterop_CreateFontFaceFromHdc(IDWriteGdiInterop *iface,    HDC hdc, IDWriteFontFace **fontface){    struct gdiinterop *This = impl_from_IDWriteGdiInterop(iface);    IDWriteFont *font;    LOGFONTW logfont;    HFONT hfont;    HRESULT hr;    TRACE("(%p)->(%p %p)/n", This, hdc, fontface);    *fontface = NULL;    hfont = GetCurrentObject(hdc, OBJ_FONT);    if (!hfont)        return E_INVALIDARG;    GetObjectW(hfont, sizeof(logfont), &logfont);    hr = IDWriteGdiInterop_CreateFontFromLOGFONT(iface, &logfont, &font);    if (FAILED(hr))        return hr;    hr = IDWriteFont_CreateFontFace(font, fontface);    IDWriteFont_Release(font);    return hr;}
开发者ID:andyvand,项目名称:Wine-Sherry,代码行数:27,


示例5: Test_CreateFontIndirectW

voidTest_CreateFontIndirectW(void){    LOGFONTW logfont;    HFONT hFont;    ULONG ret;    ENUMLOGFONTEXDVW elfedv2;    logfont.lfHeight = 12;    logfont.lfWidth = 0;    logfont.lfEscapement = 0;    logfont.lfOrientation = 0;    logfont.lfWeight = FW_NORMAL;    logfont.lfItalic = 0;    logfont.lfUnderline = 0;    logfont.lfStrikeOut = 0;    logfont.lfCharSet = DEFAULT_CHARSET;    logfont.lfOutPrecision = OUT_DEFAULT_PRECIS;    logfont.lfClipPrecision = CLIP_DEFAULT_PRECIS;    logfont.lfQuality = PROOF_QUALITY;    logfont.lfPitchAndFamily = DEFAULT_PITCH;    memset(logfont.lfFaceName, 'A', LF_FACESIZE * 2);    hFont = CreateFontIndirectW(&logfont);    ok(hFont != 0, "CreateFontIndirectW failed/n");    memset(&elfedv2, 0, sizeof(elfedv2));    ret = GetObjectW(hFont, sizeof(elfedv2), &elfedv2);    ok(ret == sizeof(ENUMLOGFONTEXW) + 2*sizeof(DWORD), "/n");    ok(elfedv2.elfEnumLogfontEx.elfLogFont.lfFaceName[LF_FACESIZE-1] == ((WCHAR)'A' << 8) + 'A', "/n");    ok(elfedv2.elfEnumLogfontEx.elfFullName[0] == 0, "/n");    /* Theres a bunch of data in elfFullName ... */}
开发者ID:Moteesh,项目名称:reactos,代码行数:32,


示例6: SHGetCurColorRes

void CBrandBand::SelectImage(){    int                                     screenDepth;    RECT                                    clientRect;    int                                     clientWidth;    int                                     clientHeight;    int                                     clientSize;    HINSTANCE                               shell32Instance;    BITMAP                                  bitmapInfo;    int                                     resourceID;    screenDepth = SHGetCurColorRes();    GetClientRect(&clientRect);    clientWidth = clientRect.right - clientRect.left;    clientHeight = clientRect.bottom - clientRect.top;    clientSize = min(clientWidth, clientHeight);    if (screenDepth > 8)        resourceID = gTrueColorResourceBase;    else        resourceID = g256ColorResourceBase;    if (clientSize >= gLargeImageSize)        resourceID += 2;    else if (clientSize >= gMediumImageSize)        resourceID += 1;    shell32Instance = GetModuleHandle(L"shell32.dll");    fImageBitmap = LoadBitmap(shell32Instance, MAKEINTRESOURCE(resourceID));    GetObjectW(fImageBitmap, sizeof(bitmapInfo), &bitmapInfo);    fBitmapSize = bitmapInfo.bmWidth;    fMaxFrameCount = bitmapInfo.bmHeight / fBitmapSize;}
开发者ID:mvardan,项目名称:reactos,代码行数:30,


示例7: EMFDRV_CreateFontIndirect

/****************************************************************** *         EMFDRV_CreateFontIndirect */static BOOL EMFDRV_CreateFontIndirect(PHYSDEV dev, HFONT hFont ){    DWORD index = 0;    EMREXTCREATEFONTINDIRECTW emr;    int i;    if (!GetObjectW( hFont, sizeof(emr.elfw.elfLogFont), &emr.elfw.elfLogFont )) return 0;    emr.emr.iType = EMR_EXTCREATEFONTINDIRECTW;    emr.emr.nSize = (sizeof(emr) + 3) / 4 * 4;    emr.ihFont = index = EMFDRV_AddHandle( dev, hFont );    emr.elfw.elfFullName[0] = '/0';    emr.elfw.elfStyle[0]    = '/0';    emr.elfw.elfVersion     = 0;    emr.elfw.elfStyleSize   = 0;    emr.elfw.elfMatch       = 0;    emr.elfw.elfReserved    = 0;    for(i = 0; i < ELF_VENDOR_SIZE; i++)        emr.elfw.elfVendorId[i] = 0;    emr.elfw.elfCulture                 = PAN_CULTURE_LATIN;    emr.elfw.elfPanose.bFamilyType      = PAN_NO_FIT;    emr.elfw.elfPanose.bSerifStyle      = PAN_NO_FIT;    emr.elfw.elfPanose.bWeight          = PAN_NO_FIT;    emr.elfw.elfPanose.bProportion      = PAN_NO_FIT;    emr.elfw.elfPanose.bContrast        = PAN_NO_FIT;    emr.elfw.elfPanose.bStrokeVariation = PAN_NO_FIT;    emr.elfw.elfPanose.bArmStyle        = PAN_NO_FIT;    emr.elfw.elfPanose.bLetterform      = PAN_NO_FIT;    emr.elfw.elfPanose.bMidline         = PAN_NO_FIT;    emr.elfw.elfPanose.bXHeight         = PAN_NO_FIT;    if(!EMFDRV_WriteRecord( dev, &emr.emr ))        index = 0;    return index;}
开发者ID:AmesianX,项目名称:RosWine,代码行数:38,


示例8: prepare_alpha

/* Prepare a bitmap to be used for alpha blending */static BOOL prepare_alpha (HBITMAP bmp, BOOL* hasAlpha){    DIBSECTION dib;    int n;    BYTE* p;    *hasAlpha = FALSE;    if (!bmp || GetObjectW( bmp, sizeof(dib), &dib ) != sizeof(dib))        return FALSE;    if(dib.dsBm.bmBitsPixel != 32)        /* nothing to do */        return TRUE;    *hasAlpha = TRUE;    p = dib.dsBm.bmBits;    n = dib.dsBmih.biHeight * dib.dsBmih.biWidth;    /* AlphaBlend() wants premultiplied alpha, so do that now */    while (n-- > 0)    {        int a = p[3]+1;        p[0] = (p[0] * a) >> 8;        p[1] = (p[1] * a) >> 8;        p[2] = (p[2] * a) >> 8;        p += 4;    }    return TRUE;}
开发者ID:RPG-7,项目名称:reactos,代码行数:31,


示例9: test_hatch_brush

static void test_hatch_brush(void){    int i, size;    HBRUSH brush;    LOGBRUSH lb;    for (i = 0; i < 20; i++)    {        SetLastError( 0xdeadbeef );        brush = CreateHatchBrush( i, RGB(12,34,56) );        if (i < HS_API_MAX)        {            ok( brush != 0, "%u: CreateHatchBrush failed err %u/n", i, GetLastError() );            size = GetObjectW( brush, sizeof(lb), &lb );            ok( size == sizeof(lb), "wrong size %u/n", size );            ok( lb.lbColor == RGB(12,34,56), "wrong color %08x/n", lb.lbColor );            if (i <= HS_DIAGCROSS)            {                ok( lb.lbStyle == BS_HATCHED, "wrong style %u/n", lb.lbStyle );                ok( lb.lbHatch == i, "wrong hatch %lu/%u/n", lb.lbHatch, i );            }            else            {                ok( lb.lbStyle == BS_SOLID, "wrong style %u/n", lb.lbStyle );                ok( lb.lbHatch == 0, "wrong hatch %lu/n", lb.lbHatch );            }            DeleteObject( brush );        }        else        {            ok( !brush, "%u: CreateHatchBrush succeeded/n", i );            ok( GetLastError() == 0xdeadbeef, "wrong error %u/n", GetLastError() );        }    }}
开发者ID:iXit,项目名称:wine,代码行数:35,


示例10: CreateCompatibleBitmap

/****************************************************************************** * CreateCompatibleBitmap [[email
C++ GetOidStr函数代码示例
C++ GetObjectType函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。