如何形成不规则

这一次,我想说明如何建立在我们的形式Visual Basic.NET中,我们习惯于一个完全不同的外观,例如,在如下图所示:

我们首先需要的是创造的形象,你作为一个基金的基础上使用。 在这个例子中,使用PNG格式的图像,因为他们可以有一个透明的背景。 你可以使用任何程序创建的图像(我喜欢Photoshop)。

如果你点击下面的图片,你可以下载它用于实践。

打开一个Visual Studio项目和Windows窗体和配置以下属性:

的BackgroundImage:我们的形象,PNG
的ControlBox:假
FormBorderStyle:没有
StartPosition:CenterScreen
BackgroundImageLayout:没有
背景色:一枝
TansparencyKey:一枝

然后添加其他控件,在这种情况下,4标签的,4的文本框和按钮1。 正如这个例子仅仅是形式美学,我不会把任何事件上的保存按钮或没有在文本框的验证。

你会发现,这个配置,我们也没有标题栏和按钮miminizar conseguiente,最大限度地关闭。 相反,我添加了一个图片来关闭表单。 对于这个工作,我添加了一个红色的X面板透明的背景颜色和编程面板单击事件,关闭该窗体。

考虑(形式变得清晰secreo)的重要组成部分,TransparentKey BackColor和形式应该是完全一样的。 我们建议使用在图像中使用的颜色,或在应用程序中使用的控制。

如果您已经完成了应用程序可以运行和测试的形式新的面貌......

...

...

和?

...

是的,我也花了。 这是非常好的,但没有标题栏,然后我不能动弹......

我一直在寻找解决这个问题,并找到了一种方法,实际上工作得非常好。 此代码连接到任何形式的一部分,将使我们能够移动,如果我们采取标题栏上。

 WM_NCHITTEST消息常量整数=&H84
 HTCLIENT常量整数=&H1
 HTCAPTION常量整数=&H2
保护覆盖子的WndProc(为ByRef作为System.Windows.Forms.Message米)
    选择案例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 ...

    率Bit​​acoras.com:这一次我想说明如何设置我们有一个完全不同的外观,例如,我们习惯于形式,如下图所示:首先,你需要......

    • pedrojdev说:

      这头发,只是没有,但我套用样式在表单的按钮和其他元素。 此外,伟大的工具,普通创造形式。

      感谢为输入。

  2. 乔尔说:

    这是优秀的与众不同

  3. fluireemi说:

    谢谢!

  4. 萨姆说:

    我觉得这是一个伟大的伎俩,但我没有去和修改上述指定的所有属性,但没有得到透明效果,但始终显示的BackColor TansparencyKey或者是相同的颜色,使用Visual Basic。 05,不工作的另一种方式打开或不知道怎么感谢你的想法并没有veriguare,如果他们可以帮助提前很多感谢

  5. 以利沙说:

    山姆,您的订单之前,我需要不厌其烦地重新做的例子,我要去,列出一步一步,我做什么,再试一次。
    1 - 我创建一个表单
    2 - 位置上的图像属性BackgroungImage
    3 - BackgroundImageLayout =诺姆
    4 - 背景色=巧克力(例如)
    5 - TransparencyKey =巧克力(必须是第4项相同)
    6 - FormBorderStyle =无
    7 - 的ControlBox = FALSE

    所有这些属性的形式。
    然后运行该应用程序。

    我给你另一个秘诀时不工作,多次最好的解决办法是停止纺纱的形式,不从头开始一个新的工作。

  6. 萨姆说:

    嘿嘿非常感谢你以利沙意见忘记的形式和其他回到视觉上的完美,有时我想变得有点疯狂但provar的的站具有相同的形式和尝试另一种,如果我的工作很快siceramente许多。

  7. 萨姆说:

    打招呼回到这里,但我有一个问题困扰着我和一切到现在的不规则形和绝招,但是当我把它作为一个孩子的形式,我得到的效果并不明显的地方,作为一个孩子防止效果功能

    我有名为form_principal principas的窗体和子窗体称为prueva

    这种情况是哈慈当我打电话与以下代码prueva的形式
    nombre_del_proyecto_que_estoy_haciendo.prueva.Show()
    与上面的代码一切都完美

    但是当我把作为孩子的form_principal prueva的形式,我只是多添加一行代码,但这样可以防止效果好这是什么增值

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

    形式明确表示,拥有财产form_principal IsMdiContainer =真
    运作作为contenidor的

    显然用于放置子窗体这个代码是prueva作为预防工作的效果

    如果u可以帮助将不胜感激,谢谢你抽出时间来阅读这篇文章等待帮助被解雇的SAM

  8. 以利沙说:

    山姆,不幸的是,如果你不能保留这些属性,使用属性的MdiParent。 最有可能不是。

  9. 萨姆说:

    也非常感谢你让我怀疑我已搜查长,显然行不通使用propiedaf的MdiParent

  10. JOSDAVIS说:

    老实说这个例子没有找到它的芳踪你一个很好的例子帕萨特的朋友,感谢在这种方式帮助

    salu2

  11. 亚历克斯说:

    谢谢你对这个奇妙的例子问候

  12. 约翰说:

    你好,我没有找到一个地方留下一个通用的评论,这就是为什么我会离开这里首先感谢所有为这个例子,我发现的反弹,但是这是非常好的,引起我的注意和我去证明它以完美的,但我有一个问题,希望能帮助我puedad

    我需要创建一个项目,有能力来操纵一个摄像头。 我应该怎么做捕捉视频,并能够将相机从形式到右,左,上下

    好捕捉视频和我有一个想法如何做到这一点,因为我在互联网上搜索了很多,我发现了几个例子,如何做到这一点,但我仍然没有测试这个,因为我有一个摄像头。

    nesecito anterion知道如何帮助我也给我一些意见上会有什么样的相机,我应该买开展的项目,按逻辑是有一个摄像头,通过小马达或东西posivilidad的议案

    总之,我必须做的是通过一个摄像头视频捕捉摄像头的形式向上和向下移动左,右,终于变焦

    感谢给看到这篇文章的时候我说再见

    salu2每个人都希望他们能帮助“的BOB”

  13. 哈维尔说:

    一个问题,做你所说的一切,会另外放在一个透明的面板,以尽量减少有确定,但双方的最大面板接近最大限度地减少转黑

  14. 约翰说:

    以利沙,真的工作以及在我身边,但我想向一个大忙,如果你不不介意,因为我想学我想知道,转换代码的行向最终动议的形式?,我会想了解代码...

    谢谢。

  15. 罗纳德说:

    简单的豆荚非常好,我没有,

    我做了类似的东西,但我形成他们在Photoshop .. 和资源拉动的图像..

    biendo更简单的方式是.. 我想我复杂的生活......

    一个不错的选择,做一件好事...

  16. 报“说:

    打招呼,如何使按钮布局?

  17. jader心脏说:

    非常好......但我需要知道它的不规则形状的定义... porfa ayundenme

  18. 布劳略说:

    好吧,我已经尝试用这种类型的例子......但我通过没有工作在XP中。 很好的一点是,背景色是透明的,他想对它的形象,而不是形式。 谢谢你的例子,帮我解决我的问题 :D

  19. marisol说:

    这是伟大的!......非常感谢你......你花= D的LOL!

  20. poncianux说:

    谢谢! 是我一直想知道的东西 :D

  21. 帕特里夏说:

    朋友不工作的代码移动的形式,其余的是惊人的

    • 胡里奥说:

      只需复制并粘贴此
      公共类Form1
      WM_NCHITTEST消息常量整数=&H84
      HTCLIENT常量整数=&H1
      HTCAPTION常量整数=&H2
      保护覆盖子的WndProc(为ByRef作为System.Windows.Forms.Message米)
      选择案例m.Msg
      案例WM_NCHITTEST消息
      MyBase.WndProc(M)
      如果m.Result = HTCLIENT然后m.Result = HTCAPTION
      CASE ELSE
      MyBase.WndProc(M)
      最终选择
      END SUB

      小组将Form1_Load(0 System.Object的,BYVAL e由于发件人)把手MyBase.Load

      END SUB
      末级

      更换开始将所有代码

  22. 胡里奥说:

    我如果我的工作分享这个信息,这壮观的感谢

  23. 奥拉西奥·埃斯皮诺萨说:

    非常好,通过这方面的贡献,我已经尝试了一千种,但你会以及rifaste解释的代码位,再次感谢朋友,你就会知道如何听到一个小组是相同的颜色以及FormBorderStyle estahacho作为父亲的标签将会使工作台我们的方案设计将是非常复杂和优雅的形象赐出人意外你检查工作台是相同的颜色,形式的边缘看起来有一个TabControl
    http://s2.subirimagenes.com/privadas/previo/thump_1749069workbench.png~~V

  24. 克里斯·布莱克说:

    朋友! 你做了什么是美好的...谢谢你=)优秀,但我仍然很漂亮的回报感到高兴。

  25. 克里斯·布莱克说:

    我再次发表评论hehehe ...我的想法是画在底部的按钮和在VB中创建预定义的按钮,隐藏与显示= FALSE(见图片),但是当点击它会给不estubieran,另一人的财产做我需要什么?

    关于LOL仿佛它是我XD好主意,我厌倦了,告诉你梦幻般的,我可以打开一个电子表格程序,然后主要逗留sueltitos!

评论