トップページ > 記事閲覧
3D機能オフ時&ウィンドウ最大化時にマウス座標が画面とずれる
名前:SmokingWOLF 日時: 2022/01/04 21:27

いつもDXライブラリに大変お世話になっております。 「3D機能をオフ」にして「ウィンドウを最大化」したとき、 マウス座標が画面とずれる現象を確認いたしましたのでご報告します。 別の言い方をすると、 「ウィンドウ最大化時、3D機能のオンオフによって画面の表示位置が変わってしまう現象」 なのですが、困っているのはマウス座標が見た目と変わってしまう点です。 使用したDXライブラリはWindows版の3.23です。 私の指定の方法などに問題があるかもしれませんが、 よければご確認いただけますと幸いです。 <再現スクリーンショット> 以下URLが再現画像です。 画像の上側が、再現ソース(後述)そのままの「3D機能オフ」の場合、 下側が「3D機能オン」(SetUse3DFlag( FALSE );をコメントアウト)で実行した場合です。 silversecond.com/tmp/20220104_DxLibTest.jpg 下側は期待通りのマウス座標になっていますが、 上側は見た目上は画面上にカーソルがあるように見えるにも関わらず マウス座標が「マイナス」になっているのが分かると思います。 <再現ソース> #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { SetUse3DFlag( FALSE ); // 3D機能をオフ ※この行をコメントアウトすると期待する動作になります ChangeWindowMode(TRUE) ; // ウィンドウモードに if( DxLib_Init() == -1 ){ return -1;} // DXライブラリ初期化処理 SetDrawScreen( DX_SCREEN_BACK ); SetMouseDispFlag( TRUE ); //マウスカーソルを表示(位置確認用) SetGraphMode(480 , 480 , 32 ); // 拡大時の黒埋め部分が出てきやすいように480x480に SendMessage( GetMainWindowHandle() , WM_SYSCOMMAND , SC_MAXIMIZE , NULL ); // ウィンドウ最大化 char str[256]; int MouseX,MouseY; // ESCを押すまでループ while( ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_ESCAPE ) == 0){ DrawBox(0, 0, 480, 480, GetColor(200,120,120), TRUE ); GetMousePoint( &MouseX, &MouseY ); sprintf( str , "マウス座標X %d Y %d", MouseX, MouseY); DrawString( 30 , 230 , str , GetColor( 255,255,255) ) ;//マウス座標を表示 WaitTimer(16); ScreenFlip(); } DxLib_End() ; // DXライブラリ使用の終了 return 0 ; // ソフトの終了 }
メンテ

Page: 1 |

Re: 3D機能オフ時&ウィンドウ最大化時にマウス座標が画面とずれる ( No.1 )
名前:管理人 日時:2022/01/05 23:37

ご報告ありがとうございます すみません、ソフトウェアレンダリングモード時には 『ウィンドウのクライアント領域の中心に表示する』 処理になっていませんでした クライアント領域の中心に表示されるように修正したバージョンをアップしましたので、 よろしければお試しください m(_ _;m https://dxlib.xsrv.jp/temp/DxLibVCTest.zip // Windows版 VisualC++ 用 https://dxlib.xsrv.jp/temp/DxLibBCCTest.zip // Windows版 BorlandC++ 用 https://dxlib.xsrv.jp/temp/DxLibBCC2Test.zip // Windows版 C++ Builder 10.3 用 https://dxlib.xsrv.jp/temp/DxLibGCC_MinGWTest.zip // Windows版 MinGW 用 https://dxlib.xsrv.jp/temp/DxLibDotNet.zip // Windows版 .NET用 https://dxlib.xsrv.jp/temp/DxLibMakeTest.zip // ソース (中身を既存のライブラリのファイルに上書きして『リビルド』をして下さい)
メンテ
Re: 3D機能オフ時&ウィンドウ最大化時にマウス座標が画面とずれる ( No.2 )
名前:SmokingWOLF(解決) 日時:2022/01/06 10:43

>管理人様 いただいた最新版で期待通りに表示されるようになったことを確認いたしました。 迅速なご対応、本当にありがとうございます!
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存