>>436
レスありがとうございます!
RichTextBoxはよく分からないんですが、頑張って勉強してみます。

>>437
自前で描画はやろうと思ったんですが、IMEが使えなくなったりと
こっとの方がトラブル多くて諦めました・・・

>>441
一例を挙げてみます。
使うコントロール:ピクチャボックス
ピクチャボックスを4×4に分割して考え、それぞれの升目にパネルを配置する。
キーボードの↓←↑→が押されたらイベントを呼び出し、空白升に隣接したパネルを動かす。
(マウスイベントでも可)
パネルがそろえば、ゲームクリア。

パネルの配置は2次元配列(4×4)を使うと良いでしょう。
あとは、パネルの配置が変わるごとに、ピクチャボックスを再描画する。

------------------------------------------------------------
[Declaration]
Option Explicit
<変数の定義>

[Form_Load()]
<乱数配列を初期化する(Randomize)>
<パネルを配置する(乱数使用)→パネルの配列(2次元)に格納>
<ピクチャボックスに描画>

[Picture1.KeyDown(...)]
select case keycode
case vbkeyleft:……
  ……
end select
<ピクチャボックスに描画>
<揃ったかどうかを判定>

画像を使う場合、BitBlt APIを使うと良いです。
分かりにくくてすみません・・・