▼ 2004/3/20 (土) 00:45:00 ぜん | |
Mozilla/4.0 (compatible; MSIE 6.0; Windows 98) |
[3480] ウィンドウ→重ねて表示について&ソース(3)-3 |
//crayonzen 再計算して最初のウィンドウ
//if( j == count - 1 ){ // jが最後の場合deltaが加算されないので。と思ったのだが・・・
//w_offset += w_delta;
//h_offset += h_delta;
//}
if (w_offset + width > rcDesktop.right || h_offset + height > rcDesktop.bottom){
if (rcDesktop.left + sw_offset * n > rcDesktop.right - width){
n = 0;
}
n += 1;
w_offset = rcDesktop.left + sw_offset * n;
h_offset = rcDesktop.top; //
}
::SetWindowPos(phwndArr[j], HWND_TOP, w_offset, h_offset, width, height, 0 );
::BringWindowToTop( phwndArr[j] );
#ifdef _WIN32
::SetForegroundWindow(phwndArr[j]);
#endif
::SetFocus( phwndArr[j] );//MIKさんに習って一応念のためm(_ _)m
delete [] phwndArr;
delete [] pEditNodeArr;
}
return;
}
----------------------------------------
------------------------------
行 7367 //上下に並べて表示
void CEditView::Command_TILE_V( void )
{
--略--
行 7406 ::SetWindowPos(
phwndArr[i], 0,
//rcDesktop.left, height * i,
rcDesktop.left, rcDesktop.top + height * i , //Mar. 19, 2004 crayonzen
rcDesktop.right - rcDesktop.left, height,
SWP_NOOWNERZORDER | SWP_NOZORDER
);
----------------------------------------
------------------------------
枚数が多いと上手く表示されない事もありました。。。
OS win98SE ノートでやってるので、メモリがきついです。。。
いや、システムヒープだから16bitの方でした。いたし方ありません。
原因は・・・分かりません。。。
みなさん。がんばってくださいね!
|
|