我已经构建了一个看起来像独立应用程序的数据库......隐藏主窗口,打开和关闭时淡入/淡出表单等等
现在我追求的是......当按下按钮时可以淡出文本框...我知道我们可以使用计时器来模拟这个,但我正在寻找一个平滑的淡出文本框或子表单的功能。
非常感谢 最大
答案 0 :(得分:2)
简短回答:不。
更长的答案:不在VBA中。
完全过度使用:在C#或VB.NET中设计WPF UserControl,使用XAML制作流畅的动画。然后创建您的WinForms UserForm,添加一个WPF互操作容器,将WPF UserControl嵌入其中,将您的表单暴露给COM。您还需要公开 ViewModel 类,并找出构建该事物的方法,以便VBA代码可以与.NET表单交互 - 这不是不可能的。在您的VBA项目中,引用WPF UI的类型库(.tlb),并实例化表单。
稍微有点小问题是你现在有一个.NET类库来维护你的VBA项目的 ...如果你可以创建一个.NET类库,你也可以让自己成为一个独立的应用程序,而不是看起来之类的东西。
答案 1 :(得分:0)
通过在文本框前放置一个alpha PNG图像,然后改变alpha,可以实现潜在。
问题是您无法使用透明PNG的VBA的LoadPicture,因此您需要使用GDI +。
那就是说,我确实在表单上有透明度,但从未检查过不同的alpha方法,所以你可能会发现表单不会允许它。
德语中的这个article/site在Google翻译中得到了很好的翻译,并展示了如何在VBA中实现透明度。