标签: system-tray

如何在最小化时将.net应用程序放入系统托盘中?

任何人都可以建议一个良好的代码示例 vb.net/c#代码,以便在缩小时将应用程序放入系统托盘.

.net system system-tray

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

确保删除系统托盘图标的方法...保证

有没有办法保证您的系统托盘图标被删除?

要添加系统托盘图标,请执行以下操作:

Shell_NotifyIcon(NIM_ADD, &m_tnd);
Run Code Online (Sandbox Code Playgroud)

要删除系统托盘图标,请执行以下操作:

Shell_NotifyIcon(NIM_DELETE, &m_tnd);
Run Code Online (Sandbox Code Playgroud)

我想知道的是:如果你的应用程序崩溃怎么办?将鼠标悬停在系统托盘中,直到鼠标悬停为止.有没有办法保证图标将被删除,即使应用程序崩溃?我不希望出于各种原因使用结构化异常处理.

我想要处理的另一个案例是当进程被终止时,但不一定会崩溃.

c++ windows winapi system-tray

9
推荐指数
1
解决办法
5523
查看次数

如何向Windows询问系统托盘图标的大小?

我注意到我的应用程序将图标发送到尺寸为16x16像素的Windows托盘 - 而我的Vista PC我有一个双倍宽的任务栏,似乎以18x18显示图标.我的应用程序图标上的调整大小工件看起来很糟糕.如何询问Windows图标应该是多大?

编辑:

我正在动态生成图标,带有像素字体文本覆盖.动态生成一堆图标大小似乎很浪费,所以避免构建一个具有所有"可能"大小的图标会很好(不是我甚至不确定那些是什么).

GetSystemMetrics(SM_CXSMICON)返回16 - 不正确的值.

GetThemeBackgroundContentRect也没有帮助.

windows winapi taskbar system-tray

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

如何通过编程关闭BalloonTip?

我的应用程序中有一个托盘图标.当我在后台加载某些东西时,我正在显示气球提示20秒.但是,如果背景负荷提前完成,比如10秒钟,我想隐藏气球提示.目前隐藏气球提示的唯一方法是单击气球提示中的关闭图标.

    Public Tray As NotifyIcon
    Tray = New NotifyIcon

    Tray.BalloonTipIcon = ToolTipIcon.Info
    Tray.BalloonTipText = "Loading"
    Tray.BalloonTipTitle = "Please Wait"
    Tray.ShowBalloonTip(20 * 1000)
Run Code Online (Sandbox Code Playgroud)

是否可以在达到指定时间之前以编程方式隐藏气球提示?

.net vb.net trayicon system-tray

9
推荐指数
1
解决办法
7122
查看次数

将我的程序隐藏在Windows中的系统托盘中

我希望我的程序在Windows中靠近时钟的TaskBar状态区中显示一个图标,并找到了一种方法.

问题是,我希望我的程序在状态区域保持打开状态,如果在窗口上按下"X",但不在系统托盘中,但我不知道如何这样做并且在Google上搜索没有'帮助(我可能没有找到正确的术语).

编辑:我认为我使用了错误的条款.我知道如何在通知区域中显示我的程序图标,我想要的是在最小化窗口时将其隐藏在通常显示的区域中.

java windows swing system-tray

9
推荐指数
2
解决办法
6904
查看次数

将JavaFx fxml或JavaFx swing应用程序隐藏到System Tray

我想为网站开发一个客户端应用程序.

我希望应用程序在最小化时驻留在系统托盘中.

我不知道如何完成这项任务.

他们是这种类型的操作的任何例子.

system-tray javafx-2 fxml

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

在PowerShell中正确显示托盘气球工具提示

简短版本:我认为我需要帮助正确使用PowerShell中由于Windows消息而调用的事件来摆脱气球工具提示的图标.

长版:

我有一个长期运行的PowerShell命令(一个版本),我希望通过系统托盘/通知区域中的气球工具提示完成通知.

我能够创建一个Write-BalloonTip脚本(下面),它完全符合我的要求.唯一的问题是,托盘图标有时会发生,托盘图标不会消失,直到我将鼠标悬停在托盘图标上.通过重新使用相同的全局变量来表示NotifyIcon,我可以重新使用此脚本并保留它,以便只保留一个系统托盘图标(直到我将鼠标悬停在它上面).这仍然感觉像是一个黑客.我尝试添加一个事件处理程序,以便在BalloonTipClosed事件上通知它,然后在那里处理它.在事件处理程序中,我尝试了我看到的所有三种技术,以摆脱挥之不去的图标无济于事.

令人讨厌的部分是,一个简单的东西.Dispose似乎可以用于后续的脚本调用,这使我认为事件脚本块根本没有被调用.

我已经验证了在一个单独的WinForms应用程序中提示消失后BalloonTipClosed被调用.

我错过了什么基本的东西?任何帮助深表感谢.谢谢!

这是"Write-BalloonTip.ps1"的代码:

param
(
    $text,
    $title = "",
    $icon = "Info",
    $timeout=15000
)

[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | out-null
[System.Reflection.Assembly]::LoadWithPartialName("System.Drawing") | out-null

if ($global:writeBalloonTipIcon)
{
    # This gets rid of the previous one
    $global:writeBalloonTipIcon.Dispose()
}

$global:writeBalloonTipIcon = new-object System.Windows.Forms.NotifyIcon 
$global:writeBalloonTipIcon.Icon = [System.Drawing.SystemIcons]::Information

# FIXME: This *should* cleanup the icon after it's done, but it doesn't seem to work
$global:writeBalloonTipIcon.add_BalloonTipClosed(
  {
    # this *should* work, but it's not. …
Run Code Online (Sandbox Code Playgroud)

powershell notifications system-tray

8
推荐指数
1
解决办法
6440
查看次数

是否隐藏Windows Phone 7应用程序中的系统托盘?

我正在讨论是否隐藏或不隐藏Windows Phone 7应用程序中的系统托盘.我没有找到关于这个问题的任何一般性建议 - 官方Windows Phone设计指南根本没有解决这个问题 - 除了Jeff Wilcox的博客文章,他建议他个人喜欢在应用程序中看到系统托盘.我想从其他Windows Phone开发人员那里获得有关此问题的一般建议.

显示系统托盘的一些原因是

  • 不占用那么多空间
  • 用户可能希望有时看到它

隐藏它的原因是

  • 您无法控制其背景:除非您使用PhoneBackgroundBrush作为背景,否则顶行将突出显示
  • 许多广泛使用/官方应用程序已经隐藏它:所有游戏以及官方Facebook和Twitter应用程序.

我很欣赏这方面的所有建议.

usability system-tray windows-phone-7

8
推荐指数
2
解决办法
4622
查看次数

Java.awt.SystemTray没有正确显示托盘图标

我的代码片段如下:

SystemTray systray = SystemTray.getSystemTray();

try{
    TrayIcon trayicon = new TrayIcon(new ImageIO.read(new File("icon.png")),"I am a description");
}
catch(IOException e) {
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

一切运行顺利,但系统托盘中显示的图像被切断.除非我缩小到16x16(从40x40),否则只显示左上角部分.这icon.png是一个正确加载的图像文件(非空).我以为系统托盘图标文件可能是40px?

有人可以向我解释一下这里有什么问题吗?

java icons swing system-tray awt

8
推荐指数
1
解决办法
3177
查看次数

为什么SystemTray在WXGA模拟器中有底部边框?

我想知道如何在WXGA分辨率下删除WindowsPhone8-App中系统托盘的底部边框?

以下是WXGA模拟器上发生的情况: 例如在720p仿真器中没有出现小灰线

例如在720p仿真器中没有出现小灰线

xaml system-tray windows-phone-8 windows-phone-8-emulator

8
推荐指数
2
解决办法
371
查看次数