1

PySDL2 でボーダレス ウィンドウ (典型的なウィンドウ ボーダーを使用して作成されていないウィンドウ) を作成する方法を見つけようとしています。

オンラインで見つけられるリソースを調べましたが、明らかに可能であるにもかかわらず、これを達成する方法を教えてくれるものを特定することはできませんでした.


リサーチ:

  1. このリンクは、ほとんどの場合、ウィンドウの周りに境界線とタイトル バーがあることを示していますが、それを操作する方法についてこれ以上詳しく説明したことはありません。

  2. SDL の Window の API リファレンスをいくつか調べましたが、境界線を操作できることはまったくわかりませんでした。(できないとは言われていませんが、言及はありません)


PySDL2に関連するものは何も見つかりませんでしたが、このリンクで次のことを見つけました:

sdl.setWindowBordered(window, bordered)
Sets the border state of a window.

残念ながら、これを私の単純なサンプル スクリプト内で動作させることはできません。

ご覧いただきありがとうございます。

4

1 に答える 1

2

フラグがあることを確認する必要があります: SDL_WINDOW_BORDERLESS

完全な例:

import sys
import sdl2.ext

sdl2.ext.init()

window = sdl2.ext.Window("Hello World!", size=(640, 480), flags=sdl2.SDL_WINDOW_BORDERLESS)
window.show()

processor = sdl2.ext.TestEventProcessor()
processor.run(window)

スクリプトを少し変更すると、次のようになります。

import sys
import sdl2.ext

def run():
    sdl2.ext.init()
    W = sdl2.ext.Window("Default",size=(400,300), flags=sdl2.SDL_WINDOW_BORDERLESS)
    W.show()
    running = True
    while running:
        events = sdl2.ext.get_events()
        for event in events:
            if event.type == sdl2.SDL_QUIT:
                running = False
                break
        W.refresh()
    return 0

if __name__ == "__main__":
    sys.exit(run())
于 2014-06-28T04:16:43.793 に答える