本文整理汇总了C++中OffsetRect函数 的典型用法代码示例。如果您正苦于以下问题:C++ OffsetRect函数的具体用法?C++ OffsetRect怎么用?C++ OffsetRect使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了OffsetRect函数 的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: X11DRV_ExtEscape
/**********************************************************************
* ExtEscape ([email protected])
*/
static INT X11DRV_ExtEscape( PHYSDEV dev, INT escape, INT in_count, LPCVOID in_data,
INT out_count, LPVOID out_data )
{
X11DRV_PDEVICE *physDev = get_x11drv_dev( dev );
switch(escape)
{
case QUERYESCSUPPORT:
if (in_data && in_count >= sizeof(DWORD))
{
switch (*(const INT *)in_data)
{
case X11DRV_ESCAPE:
return TRUE;
}
}
break;
case X11DRV_ESCAPE:
if (in_data && in_count >= sizeof(enum x11drv_escape_codes))
{
switch(*(const enum x11drv_escape_codes *)in_data)
{
case X11DRV_SET_DRAWABLE:
if (in_count >= sizeof(struct x11drv_escape_set_drawable))
{
const struct x11drv_escape_set_drawable *data = in_data;
physDev->dc_rect = data->dc_rect;
physDev->drawable = data->drawable;
XFreeGC( gdi_display, physDev->gc );
physDev->gc = XCreateGC( gdi_display, physDev->drawable, 0, NULL );
XSetGraphicsExposures( gdi_display, physDev->gc, False );
XSetSubwindowMode( gdi_display, physDev->gc, data->mode );
TRACE( "SET_DRAWABLE hdc %p drawable %lx dc_rect %s\n",
dev->hdc, physDev->drawable, wine_dbgstr_rect(&physDev->dc_rect) );
return TRUE;
}
break;
case X11DRV_GET_DRAWABLE:
if (out_count >= sizeof(struct x11drv_escape_get_drawable))
{
struct x11drv_escape_get_drawable *data = out_data;
data->drawable = physDev->drawable;
return TRUE;
}
break;
case X11DRV_FLUSH_GL_DRAWABLE:
if (in_count >= sizeof(struct x11drv_escape_flush_gl_drawable))
{
const struct x11drv_escape_flush_gl_drawable *data = in_data;
RECT rect = physDev->dc_rect;
OffsetRect( &rect, -physDev->dc_rect.left, -physDev->dc_rect.top );
/* The GL drawable may be lagged behind if we don't flush first, so
* flush the display make sure we copy up-to-date data */
XFlush( gdi_display );
XSetFunction( gdi_display, physDev->gc, GXcopy );
XCopyArea( gdi_display, data->gl_drawable, physDev->drawable, physDev->gc,
0, 0, rect.right, rect.bottom,
physDev->dc_rect.left, physDev->dc_rect.top );
add_device_bounds( physDev, &rect );
return TRUE;
}
break;
case X11DRV_START_EXPOSURES:
XSetGraphicsExposures( gdi_display, physDev->gc, True );
physDev->exposures = 0;
return TRUE;
case X11DRV_END_EXPOSURES:
if (out_count >= sizeof(HRGN))
{
HRGN hrgn = 0, tmp = 0;
XSetGraphicsExposures( gdi_display, physDev->gc, False );
if (physDev->exposures)
{
for (;;)
{
XEvent event;
XWindowEvent( gdi_display, physDev->drawable, ~0, &event );
if (event.type == NoExpose) break;
if (event.type == GraphicsExpose)
{
RECT rect;
rect.left = event.xgraphicsexpose.x - physDev->dc_rect.left;
rect.top = event.xgraphicsexpose.y - physDev->dc_rect.top;
rect.right = rect.left + event.xgraphicsexpose.width;
rect.bottom = rect.top + event.xgraphicsexpose.height;
if (GetLayout( dev->hdc ) & LAYOUT_RTL)
mirror_rect( &physDev->dc_rect, &rect );
TRACE( "got %s count %d\n", wine_dbgstr_rect(&rect),
event.xgraphicsexpose.count );
if (!tmp) tmp = CreateRectRgnIndirect( &rect );
//.........这里部分代码省略.........
开发者ID:AlexSteel, 项目名称:wine, 代码行数:101, 代码来源:init.c
示例2: drawText
//.........这里部分代码省略.........
}
}
fixedText[fixedIndex] = '\0';
nLen = fixedIndex;
}
SIZE newSize;
if (fixedText)
{
newSize = sizeWithText(fixedText, nLen, dwFmt, tSize.cx);
}
else
{
newSize = sizeWithText(pwszBuffer, nLen, dwFmt, tSize.cx);
}
RECT rcText = {0};
// if content width is 0, use text size as content size
if (tSize.cx <= 0)
{
tSize = newSize;
rcText.right = newSize.cx;
rcText.bottom = newSize.cy;
}
else
{
LONG offsetX = 0;
LONG offsetY = 0;
rcText.right = newSize.cx; // store the text width to rectangle
// calculate text horizontal offset
if (1 != dwHoriFlag // and text isn't align to left
&& newSize.cx < tSize.cx) // and text's width less then content width,
{ // then need adjust offset of X.
offsetX = (2 == dwHoriFlag) ? tSize.cx - newSize.cx // align to right
: (tSize.cx - newSize.cx) / 2; // align to center
}
// if content height is 0, use text height as content height
// else if content height less than text height, use content height to draw text
if (tSize.cy <= 0)
{
tSize.cy = newSize.cy;
dwFmt |= DT_NOCLIP;
rcText.bottom = newSize.cy; // store the text height to rectangle
}
else if (tSize.cy < newSize.cy)
{
// content height larger than text height need, clip text to rect
rcText.bottom = tSize.cy;
}
else
{
rcText.bottom = newSize.cy; // store the text height to rectangle
// content larger than text, need adjust vertical position
dwFmt |= DT_NOCLIP;
// calculate text vertical offset
offsetY = (2 == dwVertFlag) ? tSize.cy - newSize.cy // align to bottom
: (3 == dwVertFlag) ? (tSize.cy - newSize.cy) / 2 // align to middle
: 0; // align to top
}
if (offsetX || offsetY)
{
OffsetRect(&rcText, offsetX, offsetY);
}
}
CC_BREAK_IF(! prepareBitmap(tSize.cx, tSize.cy));
// draw text
HGDIOBJ hOldFont = SelectObject(_DC, _font);
HGDIOBJ hOldBmp = SelectObject(_DC, _bmp);
SetBkMode(_DC, TRANSPARENT);
SetTextColor(_DC, RGB(255, 255, 255)); // white color
// draw text
if (fixedText)
{
nRet = DrawTextW(_DC, fixedText, nLen, &rcText, dwFmt);
}
else
{
nRet = DrawTextW(_DC, pwszBuffer, nLen, &rcText, dwFmt);
}
//DrawTextA(_DC, pszText, nLen, &rcText, dwFmt);
SelectObject(_DC, hOldBmp);
SelectObject(_DC, hOldFont);
} while (0);
CC_SAFE_DELETE_ARRAY(pwszBuffer);
delete[] fixedText;
return nRet;
}
开发者ID:zengzhining, 项目名称:cocos2d-x, 代码行数:101, 代码来源:CCDevice-win32.cpp
示例3: win_proc
//.........这里部分代码省略.........
case MSG_NOTIFY:
{
u16 event,id;
event =HI16(pMsg->Param1);
id =LO16(pMsg->Param1);
switch(event)
{
case BTN_DOWN: //按钮按下
if(id>=ID_START_1 && id<=ID_START_4)
{
i =id&0xF;
timer_run[i] =TRUE;
GDD_ResetTimer(GDD_FindTimer(hwnd,i),timer_interval[i],TMR_START);
}
if(id>=ID_CLR_1 && id<=ID_CLR_4)
{
i =id&0xF;
timer_count[i] =0;
InvalidateWindow(hwnd);
}
break;
////
case BTN_UP: //按钮弹起
if(id==ID_CLOSE)
{
PostMessage(hwnd,MSG_CLOSE,0,0);
}
if(id>=ID_START_1 && id<=ID_START_4)
{
i =id&0xF;
timer_run[i] =FALSE;
GDD_ResetTimer(GDD_FindTimer(hwnd,i),timer_interval[i],0);
}
break;
////
}
}
break;
////
case MSG_PAINT:
{
char wbuf[32];
hdc =BeginPaint(hwnd);
GetClientRect(hwnd,&rc0);
SetFillColor(hdc,RGB(100,100,100));
FillRect(hdc,&rc0);
SetRect(&rc,4,20,128,24);
for(i=0;i<4;i++)
{
SetTextColor(hdc,DrawText_Color_Tbl[i].text_color);
SetDrawColor(hdc,DrawText_Color_Tbl[i].bd_color);
SetFillColor(hdc,DrawText_Color_Tbl[i].bk_color);
sprintf(wbuf," 定时器%d: %d",i+1,timer_count[i]);
if(timer_run[i]!=FALSE)
{
DrawText(hdc,wbuf,-1,&rc,DT_LEFT|DT_VCENTER|DT_BORDER|DT_BKGND);
}
else
{
if(timer_count[7]&0x01)
{
DrawText(hdc,wbuf,-1,&rc,DT_LEFT|DT_VCENTER|DT_BORDER|DT_BKGND);
}
else
{
DrawText(hdc,wbuf,-1,&rc,DT_LEFT|DT_VCENTER|DT_BKGND);
}
}
OffsetRect(&rc,0,28);
}
EndPaint(hwnd,hdc);
}
break;
////
default:
return DefWindowProc(pMsg);
}
return 0;
}
开发者ID:jiankangshiye, 项目名称:DJYOS, 代码行数:101, 代码来源:gdd_demo_timer.c
示例4: MainWndProc
LRESULT CALLBACK MainWndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam )
{
switch ( msg )
{
case WM_CREATE:
{
CreateMenus();
// Set our menu bar.
SetMenu( hWnd, g_hMenu );
// Create our listview window.
g_hWnd_list = CreateWindow( WC_LISTVIEW, NULL, LVS_REPORT | LVS_EDITLABELS | LVS_OWNERDRAWFIXED | WS_CHILDWINDOW | WS_VISIBLE, 0, 0, MIN_WIDTH, MIN_HEIGHT, hWnd, NULL, NULL, NULL );
SendMessage( g_hWnd_list, LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_DOUBLEBUFFER | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES );
// Make pretty font.
SendMessage( g_hWnd_list, WM_SETFONT, ( WPARAM )hFont, 0 );
// Allow drag and drop for the listview.
DragAcceptFiles( g_hWnd_list, TRUE );
// Subclass our listview to receive WM_DROPFILES.
ListViewProc = ( WNDPROC )GetWindowLong( g_hWnd_list, GWL_WNDPROC );
SetWindowLong( g_hWnd_list, GWL_WNDPROC, ( LONG )ListViewSubProc );
// Initialize our listview columns
LVCOLUMNA lvc = { NULL };
lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT;
lvc.fmt = LVCFMT_CENTER;
lvc.pszText = "#";
lvc.cx = 34;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 0, ( LPARAM )&lvc );
lvc.fmt = LVCFMT_LEFT;
lvc.pszText = "Filename";
lvc.cx = 135;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 1, ( LPARAM )&lvc );
lvc.fmt = LVCFMT_RIGHT;
lvc.pszText = "Cache Entry Offset";
lvc.cx = 110;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 2, ( LPARAM )&lvc );
lvc.pszText = "Cache Entry Size";
lvc.cx = 95;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 3, ( LPARAM )&lvc );
lvc.pszText = "Data Offset";
lvc.cx = 88;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 4, ( LPARAM )&lvc );
lvc.pszText = "Data Size";
lvc.cx = 65;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 5, ( LPARAM )&lvc );
lvc.fmt = LVCFMT_LEFT;
lvc.pszText = "Data Checksum";
lvc.cx = 125;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 6, ( LPARAM )&lvc );
lvc.pszText = "Header Checksum";
lvc.cx = 125;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 7, ( LPARAM )&lvc );
lvc.pszText = "Cache Entry Hash";
lvc.cx = 125;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 8, ( LPARAM )&lvc );
lvc.pszText = "System";
lvc.cx = 85;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 9, ( LPARAM )&lvc );
lvc.pszText = "Location";
lvc.cx = 200;
SendMessageA( g_hWnd_list, LVM_INSERTCOLUMNA, 10, ( LPARAM )&lvc );
// Save our initial window position.
GetWindowRect( hWnd, &last_pos );
return 0;
}
break;
case WM_KEYDOWN:
{
// We'll just give the listview control focus since it's handling our keypress events.
SetFocus( g_hWnd_list );
return 0;
}
break;
case WM_MOVING:
{
POINT cur_pos;
RECT wa;
RECT *rc = ( RECT * )lParam;
GetCursorPos( &cur_pos );
OffsetRect( rc, cur_pos.x - ( rc->left + cx ), cur_pos.y - ( rc->top + cy ) );
//.........这里部分代码省略.........
开发者ID:bennyhendra, 项目名称:thumbcache-viewer, 代码行数:101, 代码来源:wnd_proc_main.cpp
示例5: AmountDialogProc
/*
* AmountDialogProc: Dialog procedure for dialog asking user for a number.
*/
BOOL CALLBACK AmountDialogProc(HWND hDlg, UINT message, UINT wParam, LONG lParam)
{
static AmountDialogStruct *info;
static HWND hEdit;
DWORD amount;
RECT dlg_rect;
RECT parent_rect;
char buf[MAXAMOUNT + 1];
HWND hwndSpin;
switch (message)
{
case WM_INITDIALOG:
hAmountDialog = hDlg;
info = (AmountDialogStruct *) lParam;
hEdit = GetDlgItem(hDlg, IDC_AMOUNTBOX);
GetWindowRect(hDlg, &dlg_rect);
GetWindowRect(GetParent(hDlg), &parent_rect);
// Position dialog.
// Don't let it extend past the edges of the parent.
//
OffsetRect(&dlg_rect, info->x - dlg_rect.left, info->y - dlg_rect.top);
if (dlg_rect.right > parent_rect.right)
OffsetRect(&dlg_rect, parent_rect.right - dlg_rect.right, 0);
if (dlg_rect.bottom > parent_rect.bottom)
OffsetRect(&dlg_rect, 0, parent_rect.bottom - dlg_rect.bottom);
if (dlg_rect.left < parent_rect.left)
OffsetRect(&dlg_rect, parent_rect.left - dlg_rect.left, 0);
if (dlg_rect.top < parent_rect.top)
OffsetRect(&dlg_rect, 0, parent_rect.top - dlg_rect.top);
MoveWindow(hDlg, dlg_rect.left, dlg_rect.top, dlg_rect.right - dlg_rect.left,
dlg_rect.bottom - dlg_rect.top, FALSE);
sprintf(buf, "%u", info->amount);
Edit_SetText(hEdit, buf);
Edit_LimitText(hEdit, MAXAMOUNT);
hwndSpin = GetDlgItem(hDlg, IDC_SPIN1);
if (info->maxAmount > UD_MAXVAL)
SendMessage(hwndSpin,UDM_SETRANGE,0,MAKELONG(UD_MAXVAL,info->minAmount));
else
SendMessage(hwndSpin,UDM_SETRANGE,0,MAKELONG(info->maxAmount,info->minAmount));
return TRUE;
HANDLE_MSG(hDlg, WM_CTLCOLOREDIT, DialogCtlColor);
HANDLE_MSG(hDlg, WM_CTLCOLORLISTBOX, DialogCtlColor);
HANDLE_MSG(hDlg, WM_CTLCOLORSTATIC, DialogCtlColor);
HANDLE_MSG(hDlg, WM_CTLCOLORDLG, DialogCtlColor);
case WM_COMMAND:
switch(GET_WM_COMMAND_ID(wParam, lParam))
{
case IDOK:
// changed from %d (long) to %u (DWORD) for 'amount'
// (1) avoids signed/unsigned mismatch
// (2) doesn't need special <= 0 case
Edit_GetText(hEdit, buf, MAXAMOUNT);
if (sscanf(buf, "%u", &amount) != 1)
EndDialog(hDlg, IDCANCEL);
else
{
if (amount < info->minAmount)
info->amount = info->minAmount;
else if (amount > info->maxAmount)
info->amount = info->maxAmount;
else
info->amount = amount;
EndDialog(hDlg, IDOK);
}
return TRUE;
case IDCANCEL:
EndDialog(hDlg, IDCANCEL);
return TRUE;
}
break;
case WM_DESTROY:
hAmountDialog = NULL;
return TRUE;
}
return FALSE;
}
开发者ID:AlleyCat1976, 项目名称:Meridian59_103, 代码行数:92, 代码来源:dialog.c
示例6: paint_pattern
// which_mode is 0 ... dest is a bitmap
// is 1 ... ignore dest ... paint on mainPtr
// is 2 ... dest is a dialog, use the dialog pattern
// both pattern gworlds are 192 x 256
void paint_pattern(HBITMAP dest,short which_mode,RECT dest_rect,short which_pattern)
{
HBITMAP source_pat;
RECT pattern_source = {32,168,96,232}, pat_dest_orig = {0,0,64,64},pat_dest;
short i,j;
RECT draw_from_orig = {0,0,192,256},draw_from,draw_to;
short store_ulx,store_uly;
if (which_mode == 1)
OffsetRect(&dest_rect,ulx, uly);
else if (which_mode == 3)
which_mode = 1;
if (which_mode == 2) {
source_pat = dialog_pattern_gworld;
if (dlog_pat_placed == 0) {
dlog_pat_placed = 1;
OffsetRect(&pattern_source, 64 * 2,0);
for (i = 0; i < 3; i++)
for (j = 0; j < 4; j++) {
pat_dest = pat_dest_orig;
OffsetRect(&pat_dest,64 * i, 64 * j);
rect_draw_some_item(mixed_gworld,pattern_source,
dialog_pattern_gworld,pat_dest,0,0);
}
}
}
else {
source_pat = pattern_gworld;
if (current_pattern != which_pattern) {
current_pattern = which_pattern;
OffsetRect(&pattern_source, 64 * (which_pattern % 5),
64 * (which_pattern / 5));
for (i = 0; i < 3; i++)
for (j = 0; j < 4; j++) {
pat_dest = pat_dest_orig;
OffsetRect(&pat_dest,64 * i, 64 * j);
rect_draw_some_item(mixed_gworld,pattern_source,
pattern_gworld,pat_dest,0,0);
}
}
}
// now patterns are loaded, so have fun
// first nullify ul shifting
store_ulx = ulx;
store_uly = uly;
ulx = uly = 0;
for (i = 0; i < (dest_rect.right / 192) + 1; i++)
for (j = 0; j < (dest_rect.bottom / 256) + 1; j++) {
draw_to = draw_from_orig;
OffsetRect(&draw_to,192 * i, 256 * j);
IntersectRect(&draw_to,&draw_to,&dest_rect);
if (draw_to.right != 0) {
draw_from = draw_to;
OffsetRect(&draw_from, -192 * i, -256 * j);
switch (which_mode) {
case 0:
rect_draw_some_item(source_pat,draw_from,
dest,draw_to,0,0); break;
case 1:
rect_draw_some_item(source_pat,draw_from,
source_pat,draw_to,0,1); break;
case 2:
rect_draw_some_item(source_pat,draw_from,
dest,draw_to,0,2); break;
}
}
}
ulx = store_ulx;
uly = store_uly;
}
开发者ID:Ircher, 项目名称:CBoE, 代码行数:76, 代码来源:graphutl.cpp
示例7: PaintThemeButton
/**
* name: PaintThemeButton
* desc: Draws the themed button
* param: ctl - BTNCTRL structure for the button
* hdcMem - device context to draw to
* rcClient - rectangle of the whole button
* return: nothing
**/
static void __fastcall PaintThemeButton(BTNCTRL *ctl, HDC hdcMem, LPRECT rcClient)
{
RECT rcText = { 0, 0, 0, 0 };
WCHAR wszText[MAX_PATH] = { 0 };
WORD ccText;
// Draw the flat button
if ((ctl->dwStyle & MBS_FLAT) && ctl->hThemeToolbar) {
int state = IsWindowEnabled(ctl->hwnd)
? (ctl->stateId == PBS_NORMAL && ctl->defbutton
? PBS_DEFAULTED
: ctl->stateId)
: PBS_DISABLED;
if (IsThemeBackgroundPartiallyTransparent(ctl->hThemeToolbar, TP_BUTTON, TBStateConvert2Flat(state))) {
if (SUCCEEDED(DrawThemeParentBackground(ctl->hwnd, hdcMem, rcClient)))
DrawThemeParentBackground(GetParent(ctl->hwnd), hdcMem, rcClient);
}
DrawThemeBackground(ctl->hThemeToolbar, hdcMem, TP_BUTTON, TBStateConvert2Flat(state), rcClient, rcClient);
}
else {
// draw themed button background
if (ctl->hThemeButton) {
int state = IsWindowEnabled(ctl->hwnd)
? (ctl->stateId == PBS_NORMAL && ctl->defbutton
? PBS_DEFAULTED
: ctl->stateId)
: PBS_DISABLED;
if (IsThemeBackgroundPartiallyTransparent(ctl->hThemeButton, BP_PUSHBUTTON, state)) {
if (SUCCEEDED(DrawThemeParentBackground(ctl->hwnd, hdcMem, rcClient)))
DrawThemeParentBackground(GetParent(ctl->hwnd), hdcMem, rcClient);
}
DrawThemeBackground(ctl->hThemeButton, hdcMem, BP_PUSHBUTTON, state, rcClient, rcClient);
}
}
// calculate text rect
{
RECT sizeText;
HFONT hOldFont;
ccText = GetWindowTextW(ctl->hwnd, wszText, _countof(wszText));
if (ccText > 0) {
hOldFont = (HFONT)SelectObject(hdcMem, ctl->hFont);
GetThemeTextExtent(
ctl->hThemeButton,
hdcMem,
BP_PUSHBUTTON,
IsWindowEnabled(ctl->hwnd) ? ctl->stateId : PBS_DISABLED,
wszText,
ccText,
DST_PREFIXTEXT,
NULL,
&sizeText);
if (ctl->cHot) {
RECT rcHot;
GetThemeTextExtent(ctl->hThemeButton,
hdcMem,
BP_PUSHBUTTON,
IsWindowEnabled(ctl->hwnd) ? ctl->stateId : PBS_DISABLED,
L"&",
1,
DST_PREFIXTEXT,
NULL,
&rcHot);
sizeText.right -= (rcHot.right - rcHot.left);
}
SelectObject(hdcMem, hOldFont);
rcText.left = (ctl->hIcon) ? 0 : (rcClient->right - rcClient->left - (sizeText.right - sizeText.left)) / 2;
rcText.top = (rcClient->bottom - rcClient->top - (sizeText.bottom - sizeText.top)) / 2;
rcText.right = rcText.left + (sizeText.right - sizeText.left);
rcText.bottom = rcText.top + (sizeText.bottom - sizeText.top);
if (ctl->stateId == PBS_PRESSED) {
OffsetRect(&rcText, 1, 1);
}
}
}
PaintIcon(ctl, hdcMem, &ccText, rcClient, &rcText);
// draw text
if (ccText > 0 && ctl->hThemeButton) {
HFONT hOldFont = (HFONT)SelectObject(hdcMem, ctl->hFont);
DrawThemeText(ctl->hThemeButton, hdcMem, BP_PUSHBUTTON, IsWindowEnabled(ctl->hwnd) ? ctl->stateId : PBS_DISABLED, wszText, ccText, DST_PREFIXTEXT, 0, &rcText);
SelectObject(hdcMem, hOldFont);
}
}
开发者ID:Seldom, 项目名称:miranda-ng, 代码行数:98, 代码来源:ctrl_button.cpp
示例8: DecryptProc
// Message handler for about box.
INT_PTR CALLBACK DecryptProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (message) {
case WM_INITDIALOG:
// Get the owner window and dialog box rectangles.
HWND hwndOwner;
RECT rc, rcDlg, rcOwner;
if ((hwndOwner = GetParent(hDlg)) == NULL) {
hwndOwner = GetDesktopWindow();
}
GetWindowRect(hwndOwner, &rcOwner);
GetWindowRect(hDlg, &rcDlg);
CopyRect(&rc, &rcOwner);
// Offset the owner and dialog box rectangles so that right and bottom
// values represent the width and height, and then offset the owner again
// to discard space taken up by the dialog box.
OffsetRect(&rcDlg, -rcDlg.left, -rcDlg.top);
OffsetRect(&rc, -rc.left, -rc.top);
OffsetRect(&rc, -rcDlg.right, -rcDlg.bottom);
// The new position is the sum of half the remaining space and the owner's
// original position.
SetWindowPos(hDlg,
HWND_TOP,
rcOwner.left + (rc.right / 2),
rcOwner.top + (rc.bottom / 2),
0, 0, // Ignores size arguments.
SWP_NOSIZE);
SetWindowText(hDlg, szFile);
return (INT_PTR)TRUE;
case WM_COMMAND:
if (LOWORD(wParam) == IDOK) {
TCHAR pwd[MAX_PASSWORD];
GetDlgItemText(hDlg, IDC_PWD, pwd, MAX_PASSWORD);
if (!wcslen(pwd)) {
MessageBox(hDlg, L"Password cannot be empty", L"Password error", MB_ICONERROR);
break;
}
if (!SodiumDecryptFile(pwd)) {
sodium_memzero(pwd, MAX_PASSWORD);
break;
}
sodium_memzero(pwd, MAX_PASSWORD);
EndDialog(hDlg, LOWORD(wParam));
PostQuitMessage(0);
return (INT_PTR)TRUE;
} else if (LOWORD(wParam) == IDCANCEL) {
EndDialog(hDlg, LOWORD(wParam));
PostQuitMessage(0);
return (INT_PTR)TRUE;
}
break;
}
return (INT_PTR)FALSE;
}
开发者ID:yorickdewid, 项目名称:yCrypt, 代码行数:73, 代码来源:yCrypt.cpp
示例9: winInitDialog
static void
winInitDialog (HWND hwndDlg)
{
HWND hwndDesk;
RECT rc, rcDlg, rcDesk;
HICON hIcon, hIconSmall;
hwndDesk = GetParent (hwndDlg);
if (!hwndDesk || IsIconic (hwndDesk))
hwndDesk = GetDesktopWindow ();
/* Remove minimize and maximize buttons */
SetWindowLongPtr(hwndDlg, GWL_STYLE,
GetWindowLongPtr(hwndDlg, GWL_STYLE)
& ~(WS_MAXIMIZEBOX | WS_MINIMIZEBOX));
/* Set Window not to show in the task bar */
SetWindowLongPtr(hwndDlg, GWL_EXSTYLE,
GetWindowLongPtr(hwndDlg, GWL_EXSTYLE) & ~WS_EX_APPWINDOW );
/* Center dialog window in the screen. Not done for multi-monitor systems, where
* it is likely to end up split across the screens. In that case, it appears
* near the Tray icon.
*/
if (GetSystemMetrics(SM_CMONITORS)>1) {
/* Still need to refresh the frame change. */
SetWindowPos (hwndDlg, HWND_TOPMOST, 0,0,0,0,
SWP_NOMOVE | SWP_NOSIZE | SWP_FRAMECHANGED);
} else {
GetWindowRect (hwndDesk, &rcDesk);
GetWindowRect (hwndDlg, &rcDlg);
CopyRect (&rc, &rcDesk);
OffsetRect (&rcDlg, -rcDlg.left, -rcDlg.top);
OffsetRect (&rc, -rc.left, -rc.top);
OffsetRect (&rc, -rcDlg.right, -rcDlg.bottom);
SetWindowPos (hwndDlg,
HWND_TOPMOST,
rcDesk.left + (rc.right / 2),
rcDesk.top + (rc.bottom / 2),
0, 0,
SWP_NOSIZE | SWP_FRAMECHANGED);
}
#ifdef XWIN_MULTIWINDOW
if (g_hIconX) hIcon=g_hIconX;
else
#endif
hIcon = LoadIcon (g_hInstance, MAKEINTRESOURCE(IDI_XWIN));
#ifdef XWIN_MULTIWINDOW
if (g_hSmallIconX) hIconSmall=g_hSmallIconX;
else
#endif
hIconSmall = LoadImage (g_hInstance,
MAKEINTRESOURCE(IDI_XWIN), IMAGE_ICON,
GetSystemMetrics(SM_CXSMICON),
GetSystemMetrics(SM_CYSMICON),
LR_SHARED);
PostMessage (hwndDlg, WM_SETICON, ICON_BIG, (LPARAM) hIcon);
PostMessage (hwndDlg, WM_SETICON, ICON_SMALL, (LPARAM) hIconSmall);
}
开发者ID:4eremuxa, 项目名称:xserver, 代码行数:64, 代码来源:windialogs.c
示例10: Draw
void Draw(HDC aDc)
{
HDC desktopHdc = NULL;
RECT sourceRect, intersectedRect;
RECT targetRect, appRect;
DWORD rop = SRCCOPY;
CURSORINFO cinfo;
ICONINFO iinfo;
int AppWidth, AppHeight;
if (bInvertColors)
rop = NOTSRCCOPY;
desktopHdc = GetDC(0);
GetClientRect(hMainWnd, &appRect);
AppWidth = (appRect.right - appRect.left);
AppHeight = (appRect.bottom - appRect.top);
ZeroMemory(&cinfo, sizeof(cinfo));
ZeroMemory(&iinfo, sizeof(iinfo));
cinfo.cbSize = sizeof(cinfo);
GetCursorInfo(&cinfo);
GetIconInfo(cinfo.hCursor, &iinfo);
targetRect = appRect;
ClientToScreen(hMainWnd, (POINT*)&targetRect.left);
ClientToScreen(hMainWnd, (POINT*)&targetRect.right);
if (bRecreateOffscreenDC || !hdcOffscreen)
{
bRecreateOffscreenDC = FALSE;
if(hdcOffscreen)
{
SelectObject(hdcOffscreen, hbmpOld);
DeleteObject (hbmpOffscreen);
DeleteDC(hdcOffscreen);
}
sourceWidth = AppWidth / iZoom;
sourceHeight = AppHeight / iZoom;
/* Create a memory DC compatible with client area DC */
hdcOffscreen = CreateCompatibleDC(desktopHdc);
/* Create a bitmap compatible with the client area DC */
hbmpOffscreen = CreateCompatibleBitmap(
desktopHdc,
sourceWidth,
sourceHeight);
/* Select our bitmap in memory DC and save the old one */
hbmpOld = SelectObject(hdcOffscreen , hbmpOffscreen);
}
GetWindowRect(hDesktopWindow, &sourceRect);
sourceRect.left = (cp.x) - (sourceWidth /2);
sourceRect.top = (cp.y) - (sourceHeight /2);
sourceRect.right = sourceRect.left + sourceWidth;
sourceRect.bottom = sourceRect.top + sourceHeight;
GetBestOverlapWithMonitors(&sourceRect);
/* Paint the screen bitmap to our in memory DC */
BitBlt(
hdcOffscreen,
0,
0,
sourceWidth,
sourceHeight,
desktopHdc,
sourceRect.left,
sourceRect.top,
rop);
if (IntersectRect(&intersectedRect, &sourceRect, &targetRect))
{
OffsetRect(&intersectedRect, -sourceRect.left, -sourceRect.top);
FillRect(hdcOffscreen, &intersectedRect, GetStockObject(DC_BRUSH));
}
/* Draw the mouse pointer in the right position */
DrawIcon(
hdcOffscreen ,
pMouse.x - iinfo.xHotspot - sourceRect.left, // - 10,
pMouse.y - iinfo.yHotspot - sourceRect.top, // - 10,
cinfo.hCursor);
/* Blast the stretched image from memory DC to window DC */
StretchBlt(
aDc,
0,
0,
AppWidth,
AppHeight,
hdcOffscreen,
0,
//.........这里部分代码省略.........
开发者ID:Strongc, 项目名称:reactos, 代码行数:101, 代码来源:magnifier.c
示例11: ZeroMemory
void CDirectDraw::Render(SSurface Src)
{
LPDIRECTDRAWSURFACE2 lpDDSurface2 = NULL;
LPDIRECTDRAWSURFACE2 pDDSurface = NULL;
SSurface Dst;
RECT srcRect;
RECT dstRect = { 0, 512, 0, 448 };
DDSCAPS caps;
ZeroMemory(&caps,sizeof(DDSCAPS));
caps.dwCaps = DDSCAPS_BACKBUFFER;
if (lpDDSPrimary2->GetAttachedSurface (&caps, &pDDSurface) != DD_OK ||
pDDSurface == NULL)
{
lpDDSurface2 = lpDDSPrimary2;
}
else
lpDDSurface2 = pDDSurface;
lpDDSurface2 = lpDDSOffScreen2;
if (!LockSurface2 (lpDDSurface2, &Dst))
return;
if (!GUI.DepthConverted)
{
SSurface tmp;
static BYTE buf [256 * 239 * 4*3*3];
tmp.Surface = buf;
if(GUI.Scale == FILTER_NONE) {
tmp.Pitch = Src.Pitch;
tmp.Width = Src.Width;
tmp.Height = Src.Height;
} else {
tmp.Pitch = Dst.Pitch;
tmp.Width = Dst.Width;
tmp.Height = Dst.Height;
}
RenderMethod (Src, tmp, &srcRect);
ConvertDepth (&tmp, &Dst, &srcRect);
}
else
{
RenderMethod (Src, Dst, &srcRect);
}
if(!Settings.AutoDisplayMessages) {
WinSetCustomDisplaySurface((void *)Dst.Surface, (Dst.Pitch*8/GUI.ScreenDepth), srcRect.right-srcRect.left, srcRect.bottom-srcRect.top, GetFilterScale(GUI.Scale));
S9xDisplayMessages ((uint16*)Dst.Surface, Dst.Pitch/2, srcRect.right-srcRect.left, srcRect.bottom-srcRect.top, GetFilterScale(GUI.Scale));
}
RECT lastRect = SizeHistory [GUI.FlipCounter % GUI.NumFlipFrames];
POINT p;
if (GUI.Stretch)
{
p.x = p.y = 0;
ClientToScreen (GUI.hWnd, &p);
GetClientRect (GUI.hWnd, &dstRect);
// dstRect.bottom = int(double(dstRect.bottom) * double(239.0 / 240.0));
if(GUI.AspectRatio)
{
int width = dstRect.right - dstRect.left;
int height = dstRect.bottom - dstRect.top;
int oldWidth = GUI.AspectWidth;
int oldHeight = GUI.HeightExtend ? SNES_HEIGHT_EXTENDED : SNES_HEIGHT;
int newWidth, newHeight;
if(oldWidth * height > oldHeight * width)
{
newWidth = width;
newHeight = oldHeight*width/oldWidth;
}
else
{
newWidth = oldWidth*height/oldHeight;
newHeight = height;
}
int xOffset = (width - newWidth)/2;
int yOffset = (height - newHeight)/2;
dstRect.right = dstRect.left + newWidth;
dstRect.bottom = dstRect.top + newHeight;
OffsetRect(&dstRect, p.x + xOffset, p.y + yOffset);
}
else
{
OffsetRect(&dstRect, p.x, p.y);
}
}
else
{
GetClientRect (GUI.hWnd, &dstRect);
//.........这里部分代码省略.........
开发者ID:mikelmcdaniel, 项目名称:snes9x-1.52-3d, 代码行数:101, 代码来源:CDirectDraw.cpp
示例12: switch
//.........这里部分代码省略.........
KeepWindowFOV(pRect, WMSZ_TOP, WMSZ_BOTTOMLEFT);
}
break;
case WMSZ_BOTTOM:
{
KeepWindowFOV(pRect, WMSZ_BOTTOM, WMSZ_TOPLEFT);
}
break;
case WMSZ_TOPLEFT:
{
KeepWindowFOV(pRect, WMSZ_TOP, WMSZ_BOTTOMRIGHT);
}
break;
}
return TRUE;
}
break;
// 窗口尺寸发生了改变后
case WM_WINDOWPOSCHANGING:
{
WINDOWPOS* pPos = (WINDOWPOS*)lParam;
// 非大小改变
if(pPos->flags & SWP_NOSIZE || pPos->flags & SWP_DRAWFRAME)
break;
// 是“全屏”状态
if(s_pVariableSystem && s_pVariableSystem->GetAs_Int("View_FullScreen"))
break;
// 计算新的Client
RECT rectFrame;
SetRect(&rectFrame, 0, 0, pPos->cx, pPos->cy);
OffsetRect(&rectFrame, pPos->x, pPos->y);
RECT rectNewFrame;
CopyRect(&rectNewFrame, &rectFrame);
KeepWindowFOV(&rectNewFrame, -1, WMSZ_TOPLEFT);
// 如果相同不处理
if(EqualRect(&rectFrame, &rectNewFrame))
break;
pPos->x = rectNewFrame.left;
pPos->y = rectNewFrame.top;
pPos->cx = rectNewFrame.right-rectNewFrame.left;
pPos->cy = rectNewFrame.bottom-rectNewFrame.top;
return 0;
}
break;
// 桌面分辨率改变
case WM_DISPLAYCHANGE:
{
if( s_pEventSystem && s_pVariableSystem->GetAs_Int("View_FullScreen"))
{
s_pEventSystem->PushEvent(GE_VARIABLE_CHANGED, "View_FullScreen", "1");
}
// 重置分辨率
if(m_bMaximized)
{
ShowWindow(g_hMainWnd, SW_RESTORE);
ShowWindow(g_hMainWnd, SW_MAXIMIZE);
}
else
开发者ID:gitrider, 项目名称:wxsj2, 代码行数:67, 代码来源:GameProcedure.cpp
示例13: SetRect
VOID CGameProcedure::CreateMainWnd(VOID)
{
INT nWinWidth = 0;
INT nWinHeight = 0;
if( s_pVariableSystem )
{
BOOL bHave = FALSE;
fVector2 fResoution = CVariableSystem::GetMe()->GetAs_Vector2( "View_Resoution" , &bHave);
if (bHave)
{
nWinWidth = (INT)fResoution.x;
nWinHeight = (INT)fResoution.y;
}
else
{
nWinWidth = DEFWINDOW_WIDTH;
nWinHeight = DEFWINDOW_HEIGHT;
}
}
else
{
nWinWidth = DEFWINDOW_WIDTH;
nWinHeight = DEFWINDOW_HEIGHT;
}
// 计算窗口大小
m_bMinimized = FALSE;
m_bFullScreen = TRUE;
SetRect( &m_rectWindow, 0, 0, nWinWidth, nWinHeight );
AdjustWindowRect( &m_rectWindow, DEFWINDOW_STYLE, FALSE );
SetRect( &m_rectFCOffset,
m_rectWindow.left,
m_rectWindow.top,
m_rectWindow.right - nWinWidth,
m_rectWindow.bottom - nWinHeight
);
UINT dwX = (::GetSystemMetrics(SM_CXFULLSCREEN)-(m_rectWindow.right-m_rectWindow.left))/2;
UINT dwY = (::GetSystemMetrics(SM_CYFULLSCREEN)-(m_rectWindow.bottom-m_rectWindow.top))/2;
OffsetRect(&m_rectWindow, -m_rectFCOffset.left, -m_rectFCOffset.top);
OffsetRect(&m_rectWindow, dwX, dwY);
m_bActive = true;
m_bRenderingPaused = FALSE;
// 注册窗口类
WNDCLASSEX wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;
wcex.lpfnWndProc = (WNDPROC)_MainWndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = g_hInstance;
wcex.hIcon = LoadIcon(g_hInstance, (LPCTSTR)IDD_GAME_DIALOG);
wcex.hCursor = LoadCursor( NULL, IDC_ARROW );
wcex.hbrBackground = (HBRUSH)NULL; //GetStockObject(WHITE_BRUSH);
wcex.lpszMenuName = (LPCTSTR)NULL;
wcex.lpszClassName = MAINWINDOW_CLASS;
wcex.hIconSm = LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL);
RegisterClassEx(&wcex);
// 创建窗口
CHAR szTitle[MAX_PATH];
_snprintf(szTitle, MAX_PATH, "%s %s (%s %s)", GAME_TITLE, VERSION_INFO, __DATE__, __TIME__);
HWND hWnd = CreateWindowEx( NULL, MAINWINDOW_CLASS, szTitle,
DEFWINDOW_STYLE,
m_rectWindow.left, m_rectWindow.top,
m_rectWindow.right-m_rectWindow.left,
m_rectWindow.bottom-m_rectWindow.top,
NULL, NULL, g_hInstance, NULL);
if(!hWnd)
{
KLThrow(_T("Can't create main window!"));
}
ShowWindow(hWnd, SW_SHOW);
UpdateWindow(hWnd);
g_hMainWnd = hWnd;
}
开发者ID:gitrider, 项目名称:wxsj2, 代码行数:90, 代码来源:GameProcedure.cpp
示例14: henon_tweaker
void henon_tweaker(void)
{
int i;
char chosen_file[128];
rect R;
rect tR;
int last_time;
int keyword;
int current_item;
int centerx, centery;
int height, width;
int row;
static int lefters[] = {
1, 2, 0,
4, 3,
5,
12, 6, 7, 8, 9, 10, 11,
15, 13, 14
};
static int righters[] = {
1, 2, 0,
4, 3,
5,
7, 8, 9, 10, 11, 12, 6,
14, 15, 13
};
static int uppers[] = {
13, 14, 15,
0, 2,
3,
5, 5, 5, 5, 5, 5, 5,
6, 8, 11
};
static int downers[] = {
3, 3, 4,
5, 5,
8,
13, 13, 13, 14, 14, 15, 15,
0, 1, 2
};
our_flocktype = flocktype;
our_tracetype = tracetype;
henon_slider.value = fha;
height = 2 + FontHeight + 8 +
2 * (3 * FontHeight / 2) +
slider_height(&henon_slider) + 4
+ 2 * FontHeight + 4;
width = 2 * sR.Xmax / 3;
HideCursor();
PushCursorPosition();
BasicCenteredBox(&tR, width, height, LIGHTGRAY, "Hnon Tweaks", BLACK);
Centers(&tR, ¢erx, ¢ery);
PushMouseRectLimit(&tR);
items = 0;
R.Xmin = tR.Xmin + 4 + StringWidth("Flock Size: ") + 4;
R.Xmax = tR.Xmax - 4;
R.Ymin = row = tR.Ymin + FontHeight + 8;
R.Ymax = R.Ymin + FontHeight + 4;
JString("Flock size: ", R.Xmin - 2, R.Ymin + 2, BLACK, LIGHTGRAY, alignRight, alignTop);
CreateRadioPanel(&R, SML, flocktypeR, 3, our_flocktype);
for (i = 0; i < 3; i++)
bR[items++] = &flocktypeR[i];
OffsetRect(&R, 0, 3 * FontHeight / 2);
R.Xmin = centerx;
row = R.Ymin;
JString("Trace Type: ", R.Xmin - 2, R.Ymin + 2, BLACK, LIGHTGRAY, alignRight, alignTop);
CreateRadioPanel(&R, PL, tracetypeR, 2, our_tracetype);
for (i = 0; i < 2; i++)
bR[items++] = &tracetypeR[i];
row += 3 * FontHeight / 2;
create_slider(&henon_slider, &tR, 4, row - tR.Ymin);
bR[items++] = &henon_slider.bR;
bR[items++] = &henon_slider.TB.nR;
for (i = 0; i < 6; i++)
bR[items++] = &henon_slider.zR[i];
if (!fancyflag)
{
R = henon_slider.tR;
InsetRect(&R, 1, 1);
GrayOut(&R);
}
row = henon_slider.tR.Ymax + FontHeight;
R.Xmin = tR.Xmin + 4;
R.Xmax = tR.Xmax - 4;
R.Ymin = row;
R.Ymax = row + FontHeight + 4;
//.........这里部分代码省略.........
开发者ID:mrchurrisky, 项目名称:chaos, 代码行数:101, 代码来源:HENTWEAK.C
示例15: scrollbar_test4
static void scrollbar_test4(void)
{
BOOL ret;
SCROLLBARINFO sbi;
RECT rect;
BOOL (WINAPI *pGetScrollBarInfo)(HWND, LONG, LPSCROLLBARINFO);
pGetScrollBarInfo = (void*)GetProcAddress(GetModuleHandleA("user32.dll"), "GetScrollBarInfo");
if (!pGetScrollBarInfo)
{
win_skip("GetScrollBarInfo is not available\n");
return;
}
/* Test GetScrollBarInfo to make sure it returns rcScrollBar in screen
* coordinates. */
sbi.cbSize = sizeof(sbi);
ret = pGetScrollBarInfo( hScroll, OBJID_CLIENT, &sbi);
ok( ret, "The GetScrollBarInfo() call should not fail.\n" );
GetWindowRect( hScroll, &rect );
ok( ret, "The GetWindowRect() call should not fail.\n" );
ok( !(sbi.rgstate[0] & (STATE_SYSTEM_INVISIBLE|STATE_SYSTEM_OFFSCREEN)),
"unexpected rgstate(0x%x)\n", sbi.rgstate[0]);
ok( EqualRect(&rect, &sbi.rcScrollBar),
"WindowRect(%d, %d, %d, %d) != rcScrollBar(%d, %d, %d, %d)\n",
rect.top, rect.left, rect.bottom, rect.right,
sbi.rcScrollBar.top, sbi.rcScrollBar.left,
sbi.rcScrollBar.bottom, sbi.rcScrollBar.right );
/* Test windows horizontal and vertical scrollbar to make sure rcScrollBar
* is still returned in screen coordinates by moving the window, and
* making sure that it shifts the rcScrollBar value. */
ShowWindow( hMainWnd, SW_SHOW );
sbi.cbSize = sizeof(sbi);
ret = pGetScrollBarInfo( hMainWnd, OBJID_HSCROLL, &sbi);
ok( ret, "The GetScrollBarInfo() call should not fail.\n" );
GetWindowRect( hMainWnd, &rect );
ok( ret, "The GetWindowRect() call should not fail.\n" );
MoveWindow( hMainWnd, rect.left+5, rect.top+5,
rect.right-rect.left, rect.bottom-rect.top, TRUE );
rect = sbi.rcScrollBar;
OffsetRect(&rect, 5, 5);
ret = pGetScrollBarInfo( hMainWnd, OBJID_HSCROLL, &sbi);
ok( ret, "The GetScrollBarInfo() call should not fail.\n" );
ok( EqualRect(&rect, &sbi.rcScrollBar),
"PreviousRect(%d, %d, %d, %d) != CurrentRect(%d, %d, %d, %d)\n",
rect.top, rect.left, rect.bottom, rect.right,
sbi.rcScrollBar.top, sbi.rcScrollBar.left,
sbi.rcScrollBar.bottom, sbi.rcScrollBar.right );
sbi.cbSize = sizeof(sbi);
ret = pGetScrollBarInfo( hMainWnd, OBJID_VSCROLL, &sbi);
ok( ret, "The GetScrollBarInfo() call should not fail.\n" );
GetWindowRect( hMainWnd, &rect );
ok( ret, "The GetWindowRect() call should not fail.\n" );
MoveWindow( hMainWnd, rect.left+5, rect.top+5,
rect.right-rect.left, rect.bottom-rect.top, TRUE );
rect = sbi.rcScrollBar;
OffsetRect(&rect, 5, 5);
ret = pGetScrollBarInfo( hMainWnd, OBJID_VSCROLL, &sbi);
ok( ret, "The GetScrollBarInfo() call should not fail.\n" );
ok( EqualRect(&rect, &sbi.rcScrollBar),
"PreviousRect(%d, %d, %d, %d) != CurrentRect(%d, %d, %d, %d)\n",
rect.top, rect.left, rect.bottom, rect.right,
sbi.rcScrollBar.top, sbi.rcScrollBar.left,
sbi.rcScrollBar.bottom, sbi.rcScrollBar.right );
}
开发者ID:aragaer, 项目名称:wine, 代码行数:67, 代码来源:scroll.c
示例16: SetupPickMonitorPane
六六分期app的软件客服如何联系?不知道吗?加qq群【895510560】即可!标题:六六分期
阅读:19263| 2023-10-27
今天小编告诉大家如何处理win10系统火狐flash插件总是崩溃的问题,可能很多用户都不知
阅读:10011| 2022-11-06
今天小编告诉大家如何对win10系统删除桌面回收站图标进行设置,可能很多用户都不知道
阅读:8338| 2022-11-06
今天小编告诉大家如何对win10系统电脑设置节能降温的设置方法,想必大家都遇到过需要
阅读:8705| 2022-11-06
我们在使用xp系统的过程中,经常需要对xp系统无线网络安装向导设置进行设置,可能很多
阅读:8651| 2022-11-06
今天小编告诉大家如何处理win7系统玩cf老是与主机连接不稳定的问题,可能很多用户都不
阅读:9679| 2022-11-06
电脑对日常生活的重要性小编就不多说了,可是一旦碰到win7系统设置cf烟雾头的问题,很
阅读:8638| 2022-11-06
我们在日常使用电脑的时候,有的小伙伴们可能在打开应用的时候会遇见提示应用程序无法
阅读:8008| 2022-11-06
今天小编告诉大家如何对win7系统打开vcf文件进行设置,可能很多用户都不知道怎么对win
阅读:8674| 2022-11-06
今天小编告诉大家如何对win10系统s4开启USB调试模式进行设置,可能很多用户都不知道怎
阅读:7544| 2022-11-06
请发表评论