ワークエリアの始点を反映してないことが原因です。対処します。
# CEditView_Command.cppのCommand_CASCADEの修正。
- int w_offset = 0;
- int h_offset = 0;
+ int w_offset = rcDesktop.left, h_offset = rcDesktop.top;
for(i = 0; i < count; ++i ){
if (w_offset + width > rcDesktop.right || h_offset + height > rcDesktop.bottom){
- w_offset = 0;
- h_offset = 0;
+ w_offset = rcDesktop.left;
+ h_offset = rcDesktop.top;
}
...
# CEditView::Command_TILE_Hの修正。
::SetWindowPos(
phwndArr[i], 0,
- width * i, rcDesktop.top,
+ rcDesktop.left + width * i, rcDesktop.top,
width, rcDesktop.bottom - rcDesktop.top,
SWP_NOOWNERZORDER | SWP_NOZORDER
);
# CEditView::Command_TILE_Vの修正も同様に。
デスクトップ、スクリーン、ワークエリアは、それぞれ別のものです。間違えないでくだい。