winform如何实现如图效果

yaotomo 2020-07-14 09:04:01
不是BS实现,要用winform实现。主界面背景左右悬浮着几个半透明的panel,这是怎么做到的?另外这些图表(折线图,饼状图,柱状图等)是有专门第三方的控件吗?请各位老师指点。
...全文
1244 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
耗子哭死猫 2020-07-15
  • 打赏
  • 举报
回复
要是不用winfrom嵌入web,图表可以用live.chat
  • 打赏
  • 举报
回复
统计图表用 echarts 就可以了。尽量少用动画,如果非要动画则需要基于 html5 web GL 之类的开发包来编写代码,费用较高。
  • 打赏
  • 举报
回复
是的,找个精通 css3 的专业美工,写几个样式,然后把 web 应用嵌入 winform 窗体展示。
assky124 2020-07-15
  • 打赏
  • 举报
回复
感觉像网页做的,或者U3D。 Winform WebBrowser搞一个,用户又不知道的
秋的红果实 2020-07-15
  • 打赏
  • 举报
回复
你问问领导为什么不让用wpf?有点好奇
yaotomo 2020-07-14
  • 打赏
  • 举报
回复
是窗体上有叠加的透明层,这个层不是一个窗体
泡泡龙 2020-07-14
  • 打赏
  • 举报
回复
winform做个透明窗体就行了吧
八爻老骥 2020-07-14
  • 打赏
  • 举报
回复
引用 6 楼 yaotomo 的回复:
[quote=引用 5 楼 icoolno1的回复:]可以调用opengl或dx9的库来做。gdi也可以画,不需要panel,用panel就不好处理图形之间的关系了。

比如:

private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(120, 0, 0, 0)), new RectangleF(25, 25, 200, 200));
e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(100, 255, 0, 200)), new RectangleF(10, 10, 200, 200));
}




当然,你如果用WPF就更简单了:

<Rectangle Margin="84,52,356,157" Fill="#FFC92F2F" Opacity="0.495" >
<Rectangle.Effect>
<DropShadowEffect ShadowDepth="10" Opacity="0.9"/>
</Rectangle.Effect>
</Rectangle>


谢谢老师,opengl我查到了,明天研究一下,有不懂的地方再请教您。dx9是什么库?devexpress9?[/quote]

DirectX9可以用.net来写,之后版本不行。
yaotomo 2020-07-14
  • 打赏
  • 举报
回复
引用 5 楼 icoolno1的回复:
可以调用opengl或dx9的库来做。gdi也可以画,不需要panel,用panel就不好处理图形之间的关系了。

比如:

private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(120, 0, 0, 0)), new RectangleF(25, 25, 200, 200));
e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(100, 255, 0, 200)), new RectangleF(10, 10, 200, 200));
}




当然,你如果用WPF就更简单了:

<Rectangle Margin="84,52,356,157" Fill="#FFC92F2F" Opacity="0.495" >
<Rectangle.Effect>
<DropShadowEffect ShadowDepth="10" Opacity="0.9"/>
</Rectangle.Effect>
</Rectangle>

谢谢老师,opengl我查到了,明天研究一下,有不懂的地方再请教您。dx9是什么库?devexpress9?
八爻老骥 2020-07-14
  • 打赏
  • 举报
回复
可以调用opengl或dx9的库来做。gdi也可以画,不需要panel,用panel就不好处理图形之间的关系了。

比如:

private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(120, 0, 0, 0)), new RectangleF(25, 25, 200, 200));
e.Graphics.FillRectangle(new SolidBrush(Color.FromArgb(100, 255, 0, 200)), new RectangleF(10, 10, 200, 200));
}




当然,你如果用WPF就更简单了:

<Rectangle Margin="84,52,356,157" Fill="#FFC92F2F" Opacity="0.495" >
<Rectangle.Effect>
<DropShadowEffect ShadowDepth="10" Opacity="0.9"/>
</Rectangle.Effect>
</Rectangle>


yaotomo 2020-07-14
  • 打赏
  • 举报
回复
我也想用wpf或者silverlighr,xaml标签实现应该简单些。不过领导让用winform。。。想找个思路
yaotomo 2020-07-14
  • 打赏
  • 举报
回复
我也想用wpf或者silverlighr,xaml标签实现应该简单些。不过领导让用winform。。。想找个思路
yaotomo 2020-07-14
  • 打赏
  • 举报
回复
我也想用wpf或者silverlighr,xaml标签实现应该简单些。不过领导让用winform。。。
江湖评谈 2020-07-14
  • 打赏
  • 举报
回复
这种贴图性质的,你应该用wpf 做。用winfrom 会很艰难

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧