如何在 Windows 10 的任务栏中显示周数?

Alb*_*bin 10 taskbar calendar windows-10

有没有办法在 Windows 10 的任务栏中显示周数?我更喜欢将其集成到任务栏中显示的 Windows 时钟应用程序中 - 直接或通过左/右键单击。但目前我采取任何解决方法,包括第三方软件

我当前的解决方法是通过开始菜单打开日历(启用周数)。所以我不需要其他解决方案来打开一个我必须手动再次关闭的窗口。

注意:我提出了关于 Windows 11 的第二个问题: How can I show weeknumber in the taskbar in Windows 11?

phu*_*clv 10

您可以使用White-Tiger/T-Clock。它从 2.4.1 版本开始支持 Windows 10。您可以在此处下载最新版本。解压然后运行就可以了,没有安装程序

T-时钟日历

启动 T-Clock 后,您需要首先右键单击时钟 > T-Clock 选项来启用其日历。在“杂项”选项卡中,选中“使用 T-Clock 日历”“显示周数”

T 时钟选项

如果您需要官方支持,请在Windows 10 的反馈中心投票(需要安装 Feedback Hup 应用程序)。许多人已经报告:https://aka.ms/AA5mk4rhttps://aka.ms/AA7ujeyhttps://aka.ms/AA7ubxo


Hel*_*and 6

如果您真的很困难,一个选择是创建一个小型应用程序,将其配置为在启动时运行,以创建通知托盘图标。

例子

如果您下载 Visual Studio 2019 Community 版本,则可以使用以下代码创建一个新的 C# .Net Forms 应用程序:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using System.Globalization;

namespace WeekCounter
{
    static class Program
    {
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new MyCustomApplicationContext());
        } 
        private static void MessageBox(string v)
        {
            throw new NotImplementedException();
        }
    }

    public class MyCustomApplicationContext : ApplicationContext
    {     
        private NotifyIcon trayIcon;

        public MyCustomApplicationContext()
        {
            // Initialize Tray Icon
            trayIcon = new NotifyIcon()
            {
                Icon = WeekCounter.Properties.Resources.icon,
                Text = "WeekCounter",
                ContextMenu = new ContextMenu(new MenuItem[] {
                new MenuItem("Exit", Exit)
            }),
                Visible = true
            };

            trayIcon.MouseMove += new MouseEventHandler(notifyIcon1_MouseMove);
        }
        private void notifyIcon1_MouseMove(object sender, MouseEventArgs e)
        {
            CultureInfo myCI = new CultureInfo("en-US");
            Calendar myCal = myCI.Calendar;
            CalendarWeekRule myCWR = myCI.DateTimeFormat.CalendarWeekRule;
            DayOfWeek myFirstDOW = myCI.DateTimeFormat.FirstDayOfWeek;
            trayIcon.Text = "Time: " + DateTime.Now.ToString("MM/dd/yyyy h:mm:ss tt") + "\nWeek: " + myCal.GetWeekOfYear(DateTime.Now, myCWR, myFirstDOW);
        }

        void Exit(object sender, EventArgs e)
        {
            trayIcon.Visible = false;
            Application.Exit();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

注意:在项目的“资源”下,您可以添加合适的 ico 文件作为图标资源。它在代码中被引用为“图标”,因此资源需要命名为:

Icon = WeekCounter.Properties.Resources.icon
Run Code Online (Sandbox Code Playgroud)

添加图标资源

您可以通过在注册表项下添加对它的引用来确保 exe 在启动时运行:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 
Run Code Online (Sandbox Code Playgroud)