2016-06-20 8 views
1

現在、ブラックジャックのカードゲームを書いていて、ちょっとした問題がありました。 私は素敵なバックグラウンドを持っています。その上にチップがあります。さらに底から少し上になり、プレーヤーは特定のチップをクリックして賭け金を上げることができます。 問題は、誰かがIとは異なる画面解像度で再生する場合、ボタンとして使用する透明なボックスを変更しなければならないということです。Screen.PrimaryScreen.Bounds.Height/Widthを数値で割ってみましたが、まだ完全ではありません。スケーリングに関係なく、何かの位置を正確に設定する方法はありますか?それとも、プレイヤーに特定の解像度を強制するだけですか?もしそうなら、どのようにして解像度を設定できますか?Windowsフォーム - 画面の解像度で位置とサイズを変更する

+0

あなたは今どのようにしているかを示すコードを投稿できますか?通常、解像度を強制することはありませんが、ウィンドウの最小/最大の高さと幅を設定します。次に、コントロールの 'Anchor'プロパティを使って周りを回って、それらがあなたのウィンドウの端に相対してあなたが望むところに留まるようにします。 – DrewJordan

答えて

0

さて、私はそれを持っていると思う:)私がしなければならなかったのは、2つの変数を加えて、1600×900の画面解像度比を計算することでした。

double ws = Screen.PrimaryScreen.Bounds.Width/1600; 
double hs = Screen.PrimaryScreen.Bounds.Height/900; 

そして私は(SetBoundsを使用)intにそれらを変換し、パネルの境界を設定し、setboundsでIは、xを計算し、スケールを用いてY座標にこのような何か。それは丸めのために数ピクセルだけ外れますが、許容されます。

関連する問題