2

私たちの会社は全員を Window XP から Windows 7 に移行させようとしているので、自家製の SWT アプリケーションのいくつかをテストして、それらが Windows 7 でも動作することを確認しています。私はそれらのほとんどを解決することができましたが、ここにあるものはうまくいきません。

SWT テーブルには、常に列間に醜い黒い線があるように見えます。setLinesVisible(false) を呼び出してみましたが、役に立ちませんでした。これは重要な違いではないように思えますが、ユーザーは非常にうるさい場合があります。アプリを Windows 7 に移行するという同様の経験をした人はいますか?

以前 (XP の場合 - 賛成):

ここに画像の説明を入力

後 (Windows 7 の場合 - 親指を下に向けます [黒い線に注意してください]):

ここに画像の説明を入力

助言がありますか?

4

1 に答える 1

3

次のリスナーをテーブルに追加してみてください。

      //Assuming your table is named 'table' and 'backgroundColor' is the
      //color you're using to paint it's background.
      table.addListener(SWT.EraseItem, new Listener() {
        @Override
        public void handleEvent(Event event) {
          event.gc.setBackground(backgroundColor);
          event.gc.fillRectangle(event.getBounds());
        }
      });


これにより、垂直線の問題が解決するはずです。これが私のサンプルテーブルでどのように見えるかです:

リスナーがない場合(垂直線に注意してください。私の場合は黒ではなく、灰色ですが、まだ表示されています):

ここに画像の説明を入力してください

そして今、リスナーが追加されています:

ここに画像の説明を入力してください

于 2011-05-18T17:48:04.683 に答える