2011-01-16 25 views
1

ボーダレス(FormBorderStyle.None)フォームをウィンドウ(=負の座標)から移動するにはどうすればよいですか? ;ボーダレスフォーム(C#)の場所を変更する

  • this.Location =新しいポイント(-10、-10):

    は、私はすでに、次のことを試してみました

  • MoveWindow()user32.dllの

からuser32.dllの

  • SetWindowPos()任意のアイデアから?

  • +0

    なぜそのウィンドウを隠さないのですか? this.Visible = false;役に立った? – Zuuum

    +0

    私はすでにSHAPBarMessageを使って画面上部にいくつかのスペースを予約していました。今私はこの位置に私の窓を移動しようとします。 –

    +0

    なぜあなたは画面から外すことでウィンドウを隠しているのですか?それでも、例えば入力フォーカスの対象となります。それをするのは間違った方法です。ウィンドウを非表示にしたい場合は、隠すだけです。 –

    答えて

    3

    答えはです。 (マルチモニタでは動作しません)

    this.Location = new Point(-1 * this.Width, -1 * this.Height); 
    

    設定することでウィンドウを非表示にすることができます。あなたが選択したものをエッジに応じて、

    this.Visible = false; 
    
    +0

    とマルチモニタシステムはどうですか? –

    +0

    マルチモニタシステムをターゲットにしている場合、彼はこれを行うためにLocationプロパティで遊んではいけません。彼は上記のZuuumが –

    +0

    ターゲットマルチモニタシステムを提案しているので、Visibleパラメータをfalseに設定することができますか?それはかなり面白いです! –

    1

    あなたがSHAppBarMessageとあなたの窓の外にタスクバーを作成したら、ウィンドウの位置がシェルによって制御されています、。タスクバーを完全に破棄するABM_REMOVEか、自動非表示のタスクバーに変更できるABM_SETSTATEを使用する必要があります。タスクバーの上に別のウィンドウを移動させても機能しない場合、シェルはタスクバーがタスクバーのように動作するのを防ぎます。

    +0

    私は好奇心が強いです。独自のアプリバーを作成する実際のアプリはありますか?もしそうなら、なぜですか? –

    +0

    @David - 私のマシンの1つにプリインストールされた、いくつかの爆発したDellのシャベルウェアアプリ。はい、これらのプログラムは非常に長くインストールされたままです。彼らは通常、とにかくブラウザをターゲットにしています。 –

    +0

    「本当のアプリ」の条件を考えれば、それは「いいえ」となるでしょうか?私はアプリのバーのものを前に見たことがありますが、なぜそれがそこにあるのだろうと誰もがそれを使用する気になる理由の頭を持っていることはありません。 –

    関連する問題