不規則な形成方法

私はで私たちのフォームを設定する方法を示したいとこの時間。Visual Basic。NETでは、次の図に示すように、我々は、例のために、慣れているために全く異なる外観を持つこと。

我々が最初に必要なことは、ファンドの基準として使用するイメージを作成することです。 彼らは透明な背景を持つことができるため、この例では、PNG形式の画像を使用しています。 あなたは、イメージを(私はPhotoshopを好む)を作成する任意のプログラムを使用することができます。

下の画像をクリックすると、練習のために使用するためにダウンロードすることができます。

Visual StudioプロジェクトおよびWindowsフォームを開き、次のプロパティを設定します。

には、BackgroundImage:私たちのイメージPNG
ControlBox:偽
FormBorderStyle:なし
StartPositionの:画面の中央
BackgroundImageLayout:なし
BackColorプロパティ:コガネ
TansparencyKey:コガネ

次に、このケース4のラベルの、4のテキストボックスと1つのボタンで、他のコントロールを追加します。 この例ではフォームの唯一の美学であるように私は、保存ボタンやテキストボックスの検証なしにすべてのイベントを入れません。

この構成では、我々はタイトルバーを持っているとボタンmiminizar conseguiente、最大化し、閉じていないことがわかります。 代わりに私は、フォームを閉じるために画像を追加しました。 これが機能するためには、私は赤のX上の透明な背景色、フォームを閉じるには、パネルのプログラムのクリックイベントでパネルを追加しました。

(明らかになるようにフォームの一部をsecreo)考慮すべき重要な部分は、TransparentKey BackColorや形がまったく同じであるべきであるということです。 我々は、画像で使用されていない色を使用するか、またはアプリケーションのコントロールを使用することをお勧めします。

あなたは既に完了した場合、アプリケーションは、次の形式の新しい外観を実行し、テストすることができます...

...

...

と?

...

はい、私も過ごしました。 それは非常に良いですが、タイトルバーを持っていませんし、私は移動することはできません...

私はこの問題を解決するために見て、実際には非常にうまく機能する方法を発見されました。 フォームの任意の部分に接続されているこのコードは、タイトルバーを取っていたかのように私たちが移動することができます。

整数型(Integer)=&H84のようWM_NCHITTESTのConst
整数型(Integer)=&H1としてHTCLIENTのConst
整数型(Integer)=&H2としてHTCAPTIONのconst
保護されたオーバーライドサブのWndProc(System.Windows.Forms.MessageとしてはByRef m)の
    ケースm.Msgを選択します。
        ケースWM_NCHITTEST
             MyBase.WndProc(M)
             m.Result = HTCLIENTその後m.Result = HTCAPTION場合
         Case Elseの
             MyBase.WndProc(M)
    選択して終了
 End Subの

"不規則を形成する方法"〜27の応答

  1. Bitacoras.comは 言う:

    情報Bitacoras.com ...

    Bitacoras.comのレート:私は、下図に示すように、我々は、例えば、慣れているために全く異なる外観を持っている私たちのフォームを設定する方法を表示するこの時間:まずあなたが必要と.....

    • Pedrojdevは言う:

      この髪、だけではありませんが、私はフォーム内の​​ボタンやその他の要素にスタイルを適用します。 その優れたツールに加えて、フォームを作成する際に普通の外に取得します。

      入力をありがとう。

  2. ジョエルは言う:

    普通の外に優れていること

  3. Fluireemiは言う:

    ありがとうございました!

  4. samは言う:

    よく私はそれは素晴らしいトリックだと思うが、私はうまくいき、上記指定されたすべてのプロパティを変更しませんでしたが、透明効果を得ることはありませんが、常にVisual Basicを使用して同じですTansparencyKey背景色または色を示しています。 05彼らは、事前に多くの感謝を助けることができるとあればveriguareを開いたり、アイデアをありがとう、失敗しないように別の方法では動作しません

  5. エリシャは言います:

    サムは、ご注文前に、私は再度行う例に迷惑がかかると私はもう一度やり直して何をステップバイステップの一覧を表示するつもりです。
    1 - 私は、フォームを作成する
    2 - プロパティBackgroungImage上の位置のイメージ
    3 - BackgroundImageLayout =ノーム
    4 - BackColorプロパティ=チョコレート(例えば)
    5 - するTransparencyKey =チョコレート(項目4と同じでなければなりません)
    6 - FormBorderStyle =なし
    7 - ControlBox = Falseの場合

    すべてのこれらのプロパティはフォームのものです。
    次に、アプリケーションを実行して行く。

    私はあなたに別のヒントを与える...何が最善の解決策は、フォームでの回転が停止し、新しいものをゼロから動作しないで何度も動作しないとき。

  6. samは言う:

    ちょっとBIGは、フォームを忘れて、お客様にエリシャのアドバイスを感謝し、他は時々私はすぐにsiceramente多くのおかげで働いていた場合は、同じ形で少し狂気がprovarストップを取得し、別のを試してみて思うのビジュアル完璧に戻った。

  7. samは言う:

    ここに戻ってこんにちは、私は私とすべてが今までうまくいった不規則な形とトリックを悩ませて問題を持っていますが、子供がエフェクト機能を防止するため、私は子フォームとしてそこに置くとき、私は明らかに場所を効果がない取得

    私はform_principal principasという名前のフォームとpruevaと呼ばれる子フォームを持っている

    私は、次のコードpruevaでフォームを呼び出すときに状況はhaciです。
    nombre_del_proyecto_que_estoy_haciendo.prueva.Show()
    上記のコードですべてが完璧に行く

    しかし、私はform_principal pruevaの子としてフォームを置くとき、私はコードのちょうど1つのより多くの行を追加しますが、これはそれがよく、これは何が追加され効果を防ぐことができ

    nombre_del_proyecto_que_estoy_haciendo.prueva.MdiParent = I
    nombre_del_proyecto_que_estoy_haciendo.prueva.Show()

    フォームプロパティform_principal IsMdiContainerプロパティ= trueを持っていることをクリアする
    それはcon​​tenidorとして機能する

    よく、明らかに子フォームを配置するために使用このコードは動作するように効果を防ぐようにpruevaです。

    uはそれを感謝し、助けを待っているこのポストを読むために時間を割いてのおかげでは、SAMを却下されている助けることができる場合

  8. エリシャは言います:

    あなたは、プロパティMdiParentを使用してこれらのプロパティを保持できない場合は残念ながらサム、。 ほとんどありません。

  9. SAMは言う:

    よくpropiedaf MdiParentを使用して、私は長い間で検索しました疑いの私を取得し、明らかに動作しないためにどうもありがとうございました

  10. JOSDAVISは言う:

    正直にこの例では、どこにもこのような方法で助けるために非常に良い例pasateの友人と感謝をそれを見つけられません

    salu2

  11. アレックスは言う:

    この素晴らしい例では、挨拶していただきありがとうございます

  12. ジョンは言う:

    こんにちは私は、私はリバウンドを発見したが、それは非常に良好であり、私の注意を引いたと私は完璧にそれを証明したことこの例では、すべての感謝の最初のもここに残しておきます理由です一般的なコメントを残しする場所を見つけられませんでしたが、私はうまくいけば私はpuedad役立つ質問があります

    さて私はカメラを操作する能力を持つプロジェクトを作成する必要がありますか。 と私は、上下、左、ビデオをキャプチャし、右側のフォームからカメラを動かすことができるように何をすべき

    ビデオをキャプチャし、私はインターネット上で多くのことを検索し、私はそれを行う方法の例をいくつか見つかったが、私はカメラを持っているので、まだ私が上でこれをテストしていませんので、私はそれを行う方法のアイデアを持っているのが良い。

    私がプロジェクトを遂行するために買うべきカメラのようなものであろうかについていくつかのアドバイスを与えることも私を助ける方法を知っているnesecito anterionはロジックであり、小型モーターか何かを通してposivilidad動きを持っているカメラである必要があります

    短期的に私がしなければならないとウェブカメラのビデオキャプチャウェブカムのフォームを介して左と右、最後にズーム上下に移動していることです。

    この記事を読むために与えられた時間のおかげで私は別れを告げる

    salu2皆とうまくいけば、彼らは "BOB"を助けることができる

  13. ハビエル氏は述べています:

    質問とあなたが言ったすべてを行っており、さらにそこまで[OK]を最小にするために透明なパネルを配置しますが、時最大パネルの両方に近いように黒のターンを最小限に抑える

  14. ジョンは言う:

    エリシャは、本当に私の周りによく働いたが、私はあなたが気にしない場合非常に頼みたかった、私はコードの行は、フォームを移動するには終止符を打つために、その変換を知って希望ですか?を学びたいので、私はコードを理解したいと思います...

    ありがとうございます。

  15. ロナルドは言う:

    、私がしたポッドの最も簡単な非常に良い

    私は似たような何かをしたが、私はphotoshopでそれらを作ったフォーム.. とリソースを稼いでの画像..

    あなたの方法はより単純であるbiendo .. 私は人生を複雑にすると思います...

    何か良いことを行うには良い選択...

  16. パオは言う:

    こんにちは、あなたはボタンのレイアウトを作る方法?

  17. jader心臓は言う:

    非常に良いです....しかし、私はそれと一緒に不規則な形の定義を知っておく必要があります... porfa ayundenme

  18. ブラウリオは言う:

    まあ、私はすでに例のこのタイプの実験をしていた...しかし、私はXPで動作しなかったことを可決した。 ウェルポイントは、背景色、彼はそれがイメージではなく、フォームに配置したかった、透明であるということです。 あなたの例をありがとうございまして私は私の問題を解決しました :D

  19. マリソルは言う:

    これは素晴らしい!..ありがとうございました...あなたはLOL = Dを過ごした!

  20. poncianuxは言う:

    ありがとうございました! 私は常に知りたいと思ったものです :D

  21. パトリシアは言う:

    友人がフォームを移動するためのコードを動作しない場合は、残りの部分は素晴らしいです

    • フリオは言う:

      ただ、これをコピーして貼り付ける
      Public Class Form1の
      整数型(Integer)=&H84のようWM_NCHITTESTのConst
      整数型(Integer)=&H1としてHTCLIENTのConst
      整数型(Integer)=&H2としてHTCAPTIONのconst
      保護されたオーバーライドサブのWndProc(System.Windows.Forms.MessageとしてはByRef m)の
      ケースm.Msgを選択します。
      ケースWM_NCHITTEST
      MyBase.WndProc(M)
      m.Result = HTCLIENTその後m.Result = HTCAPTION場合
      Case Elseの
      MyBase.WndProc(M)
      選択して終了
      End Subの

      プライベートサブをForm1_Load(ているSystem.EventArgsとしてはSystem.Object、ByValを電子としてByVal送信者)ハンドルMyBase.Load

      End Subの
      エンドクラス

      あなたが開始し、作業対象となるすべてのコードを置き換えます。

  22. フリオは言う:

    私に私がこの情報を共有するためのすべてのこの壮大なおかげで働いていた場合

  23. オラシオEspinosaさんは言う:

    この介して非常に良い貢献、私は千の方法を試みたが、rifasteはよく説明し、よく再び友人に感謝して、パネルを聞く方法を知っているよコードのビットと同じ色だけでなく、FormBorderStyleは、 estahachoに見える形のエッジと同じ色であるTabControlを持つ父親が私たちのプログラムの設計は非常に洗練されたエレガントなイメージになるので、ワークベンチであるようタブでは、ワークベンチをチェックするために通り過ぎる
    http://s2.subirimagenes.com/privadas/previo/thump_1749069workbench.png~~V

  24. クリス·ブラック氏は述べています:

    友よ! あなたは何が素晴らしいです...ありがとうございました=)に優れた、私は非常にきれいな復帰を喜んで残っています。

  25. クリス·ブラック氏は述べています:

    再び私はふふふのコメント...私のアイデアは、下部にボタンを描画し、VBには、Show = Falseを持つ非表示で事前定義されたボタンを作成することです(図を参照するため)、それをクリックするとestubieran、別のプロパティを与えたりしないとき私は必要な何をすべきか?

    私はそれを私は素晴らしいよ言って飽きXD優れたアイデア地雷でした笑かのようにスプレッドシートプログラムと、メインの滞在sueltitosを開くことができますについて!

コメント