标签: aero-glass

结合航空玻璃效果和SWT

作为一个宠物项目,我一直在玩将Aero Glass效果集成到我的SWT应用程序中的概念.ŁukaszMilewski有一篇很棒的博客文章,解释了如何实现这一点,这几乎归结为:

final Display display = new Display();
final Shell shell = new Shell(display);
shell.setLayout(new FormLayout());
final MARGINS margins = new MARGINS();
margins.cyTopHeight = -1;

final Composite c = new Composite(shell, SWT.NORMAL);
c.setBackground(new Color(shell.getDisplay(), new RGB(0, 0, 0)));
final FormData fd = new FormData();
fd.top = new FormAttachment(0, 0);
fd.left = new FormAttachment(0, 0);
fd.right = new FormAttachment(100, 0);
fd.bottom = new FormAttachment(100, 0);
c.setLayoutData(fd);

OS.DwmExtendFrameIntoClientArea(shell.handle, margins);

shell.open();
while (!shell.isDisposed()) {
    if (!display.readAndDispatch()) {
        display.sleep();
    }
}
Run Code Online (Sandbox Code Playgroud)

这很好用,直到你想添加一个控件.这导致黑色保持透明: …

java windows swt aero aero-glass

6
推荐指数
1
解决办法
3050
查看次数

如何在没有边框的Windows窗体上获得Aero Glass?

我正在尝试使用DWM API在VB.NET 2010应用程序中查看Aero Glass的表单,但是正如函数调用所示,它将Frame的外观扩展到客户区,如果表单没有边框,则不会发生任何事情和形式将变得无形.那么,我可以在没有任何边框的情况下获得Aero玻璃吗?

vb.net dwm winforms aero-glass

6
推荐指数
1
解决办法
1万
查看次数

如果窗口包含HwndHost元素,则自定义dwm绘制的窗口框架会在调整大小时闪烁

我一直在考虑这个问题,但我认为我对Windows和wpf如何在内部工作以解决这个问题缺乏一些基本的了解.

问题是这样的:

我创建了一个窗口,可以让我在空中标题栏(如办公室)上绘制wpf控件.只要我不向窗口添加Hwndhost元素,这种方法就可以正常工作,在这种情况下,每当我调整框架大小并且HwndHost开始闪烁时(其他元素似乎正确渲染).我也尝试使用WPF Shell Integration库中的自定义框架窗口实现,结果是一样的,所以我认为这不完全是我的错.

以下代码是一个简单的可编译程序,可以重现该问题.样本在c#中,但答案不一定是.

using System;
using System.Runtime.InteropServices;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Interop;
using System.Windows.Media;
using System.Windows.Threading;

namespace DwmTest {
    class Program {
        [STAThread]
        static void Main( ) {
            var w = new CustomFrameWindow{ Content =  new WindowHost() };
            w.Show( );
            ((Border)VisualTreeHelper.GetChild( w, 0 )).Margin = new Thickness( 11, 33, 11, 11 );
            Dispatcher.Run( );
        }
    }

    public class CustomFrameWindow : Window {

        const int resizeFrameWidth = 11;
        const int captionHeight = 33;

        public enum …
Run Code Online (Sandbox Code Playgroud)

wpf dwm hwndhost aero-glass

6
推荐指数
1
解决办法
3636
查看次数

如何将Window的Aero效果添加到JPanel?

我正试图让Aero Glass看上去JPanel.有可能做这样的事吗?

如何添加Aero效果JFrame- 就像这张照片?

航空效果的例子

java swing jpanel translucency aero-glass

6
推荐指数
1
解决办法
3044
查看次数

在Office 2010这样的WPF应用程序中,如何对Aero glass进行渐变淡化?

我正在WPF中编写一个应用程序,我希望应用程序的顶部从颜色变为Aero玻璃,如Office 2010应用程序.

真的,它会在标题栏下方从玻璃到颜色逐渐消失.(我认为这可能是一种更好的描述方式).

.net c# wpf aero aero-glass

5
推荐指数
1
解决办法
5380
查看次数

GemStone-Linux-Apache-Seaside-Smalltalk .. 4GB的实用性如何?

我对GLASS很感兴趣.免费版的4GB限制令我担忧.特别是当我考虑下一个级别的价格(7000美元).

  1. 我知道这可能是主观的和可变的,但有人可以在日常用语中为我描述4 GB的GLASS会给你带来什么?也许是一个商业榜样.4 GB可能比我意识到的更多存储空间...而且我不必担心它.

  2. 在我的应用程序中,某些邮件的文件附件大小最大为5 MB.我可以通过将这些附件直接保存到操作系统上的文件而不是Gemstone中来保存4 GB的Gemstone空间吗?我在想是的.

smalltalk seaside gemstone aero-glass

5
推荐指数
2
解决办法
819
查看次数

玻璃表面上的发光标签控件

有没有办法,并且任何教程,文章,样本都允许在运行时创建的每个新Label Control都有一个Glow,就像在Vista/7上一样?

谢谢

c# wpf winforms aero-glass

5
推荐指数
1
解决办法
1860
查看次数

WPF玻璃窗口没有边框,没有重新调整焦点

我正在尝试使用该方法创建一个Aero玻璃无边框不可调整大小的 WPF窗口.但是,由于某些奇怪的原因,此窗口的玻璃颜色看起来好像窗口没有焦点.正如您在接下来的三张图片中看到的那样,带有边框的正常窗口(例如图1和图2)工作得很好并且按预期做出反应(焦点为深蓝色,失焦时为白色(=非活动)).DwmEnableBlurBehindWindowDmwAPI

使用ToolWindow的DwmEnableBlurBehindWindow DwmEnableBlurBehindWindow与ToolWindow失焦

允许调整大小的无边框窗口显示相同的行为:

DwmEnableBlurBehindWindow具有无边框但可调整大小的窗口

然而,不可调整大小的无边界窗口在它处于活动状态和非活动状态时总是看起来好像没有聚焦(如上图3所示).它总是看起来发白:

DwmEnableBlurBehindWindow具有无边框和不可调整大小的窗口

这是我如何设置玻璃样式的一些示例代码:

public MainWindow()
{
    InitializeComponent();

    WindowStyle = WindowStyle.None;
    ResizeMode = ResizeMode.NoResize;

    Height = 200;

    Background = Brushes.Transparent;
    Loaded += MainWindow_Loaded;
}
void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
    var windowInteropHelper = new WindowInteropHelper(this);
    var handle = windowInteropHelper.Handle;
    var mainWindowSrc = HwndSource.FromHwnd(handle);

    if (mainWindowSrc != null)
        if (mainWindowSrc.CompositionTarget != null)
            mainWindowSrc.CompositionTarget.BackgroundColor = Color.FromArgb(0, 0, 0, 0);
    var glassParams = new DwmApi.DwmBlurbehind
    {
        dwFlags = DwmApi.DwmBlurbehind.DWM_BB_ENABLE, …
Run Code Online (Sandbox Code Playgroud)

c# wpf aero aero-glass

5
推荐指数
1
解决办法
3507
查看次数

水和玻璃材料

我尝试模拟鱼缸中的光反射、折射等,我需要水材质和玻璃材质。

实际上我没有使用水和 phong 材料作为玻璃,因为我现在还没有找到更好的,可以在这里看到测试演示:http : //ledohm.free.fr/test_webgl/

对于水,我不需要模拟波浪,这意味着我可以使用与玻璃相同的材料,但具有不同的不透明度、反射率和折射率值。

我发现这个例子似乎完美地模拟了玻璃,但我不明白如何根据我的需要调整材料。据我了解,折射是从 envMap 计算的,但我没有纹理。我只想要一堵玻璃墙,尽可能模拟反射/折射/......就像在现实中一样。我如何创建(或找到)这样的材料?


编辑1:

绿色:水全内反射
红色:玻璃反射

玻璃和水反射


1:水折射
2:水+玻璃折射
3&4:消失

玻璃和水的反射和折射


编辑2:

感谢本教程,我已经了解了着色器的工作原理,更具体地说是这个示例,但是,如果我理解正确,我无法使用着色器来模拟具有厚度的材质中的光,因为着色器仅适用于网格的表面,我是对的?

aero-glass three.js

5
推荐指数
0
解决办法
5325
查看次数

在Windows Server 2008 R2中启用Aero效果

我正在使用Windows Server 2008 R2作为工作站,并希望启用Aero Glass进行一些软件开发.有没有办法在服务器上启用Aero Glass?

提前致谢,

NieAR

windows-server-2008-r2 aero-glass

4
推荐指数
1
解决办法
2万
查看次数