0

いくつかの分割パネルが互いに入れ子になっています。問題は、中央のパネル内に8x8のタイルゲームをレンダリングしていることです。基本的に、パネルの高さと幅は8の奇数倍である必要があります。これにより、中央のタイルが簡単に表示されます。

私はVB.netを使用しているので、すべての.netソリューションが受け入れられます:)

編集申し訳ありませんが、それは少し混乱していました...

つまり、幅と高さを8で割り切れる必要があります。8に掛ける数値は奇数である必要があります。

以下のこれらの数字はサイズを参照していません。それらは、2つの数が乗算されることを指します。これを示すために、これらを*に変更しました。以下のこれらの数値は、高さと幅の両方に適用されます。1つの数値は奇数で、他の数値は8です。8* x

5*8-良い

6*8-悪い

4

2 に答える 2

1

番号にmod2を実行することで、何かがおかしいかどうかを確認できます。だから

if number mod 2 == 1:
   code for board
于 2011-09-11T20:23:12.420 に答える
0

高さと幅の両方が8で割り切れる必要があると述べましたが、あなたの例では高さだけが8で割り切れます。とにかく、これを行う1つの方法があります:

これをサイズ変更イベント ハンドラーに配置します。

Dim Height as Integer = SplitControl1.Panel1.Width
    If Height mod 8 <> 0 then
  Height -= (Height mod 8)
End If

Height += 9 //This ensures that the Height is not 0 and still is divisible by 8 + 1 (to be odd)

Dim Width as Integer = SplitControl1.Panel1.Width
If Width mod 8 <> 0 then
   Width -= (Width mod 8)
End If

Width += 9 //This ensures that the Width is not 0 and still is divisible by 8 + 1 (to be odd)

最後に

SplitControl1.Panel1.Width = Width
SplitControl1.Panel1.Height = Height
于 2011-09-11T20:31:26.263 に答える