【问题标题】:Unable to change the position of label C#无法更改标签 C# 的位置
【发布时间】:2017-10-07 10:08:55
【问题描述】:

我无法更改以下代码中标签的位置:

    public static void Initialize()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);

        var F = new Form
        {
            BackColor = Color.Black,
            TransparencyKey = Color.Black,
            Bounds = Screen.PrimaryScreen.Bounds,
            FormBorderStyle = FormBorderStyle.None,
            Location = new Point(0, 0),
            MinimumSize = new Size(1920, 1080),
            TopMost = true
        };

        var Summoner1 = new Label
        {
            AutoSize = true,
            Text = "Summoner Flashs in 20",
            Dock = DockStyle.Fill,
            ForeColor = Color.White,
            Font = new Font("Consolas", 12),
            Location = new Point(0, 500)
        };
        var Summoner2 = new Label
        {
            AutoSize = true,
            Text = "Test",
            Dock = DockStyle.Fill,
            ForeColor = Color.White,
            Font = new Font("Consolas", 12),
            Location = new Point(40, 20)
        };
        var Summoner3 = new Label
        {
            AutoSize = false,
            Text = "Summoner Flash in 20",
            Dock = DockStyle.Fill,
            ForeColor = Color.White,
            Font = new Font("Consolas", 12),
            Location = new Point(0, 0)
        };
        var Summoner4 = new Label
        {
            AutoSize = false,
            Text = "Summoner Flash in 20",
            Dock = DockStyle.Fill,
            ForeColor = Color.White,
            Font = new Font("Consolas", 12),
            Location = new Point(0, 0)
        };
        var Summoner5 = new Label
        {
            AutoSize = false,
            Text = "Summoner Flash in 20",
            Dock = DockStyle.Fill,
            ForeColor = Color.White,
            Font = new Font("Consolas", 12),
            Location = new Point(0, 0)
        };
        F.Controls.Add(Summoner1);
        F.Controls.Add(Summoner2);
        Application.Run(F);
    }

我有代码:

          Location = new Point(0, 500)

但无论我在其中放入什么,它似乎都出现在 0、0 处,这使得它看起来只有 Summoner1 标签初始化,而不是其余标签(我已经尝试过 Summoner1 和 Summoner2)。它有什么问题?

【问题讨论】:

标签: c# forms location label


【解决方案1】:

删除 DockStyle.Fill。无论您设置的位置如何,此属性都会扩展您的标签以填写表单。填充的意思是从位置 0,0 开始到表格的大小

其他标签也是如此。最后由表单引擎渲染的最后一个将覆盖所有其他的

    var Summoner1 = new Label
    {
        AutoSize = true,
        Text = "Summoner Flashs in 20",
        // Dock = DockStyle.Fill,
        ForeColor = Color.White,
        Font = new Font("Consolas", 12),
        Location = new Point(0, 500)
    };

【讨论】:

    猜你喜欢
    • 2017-09-06
    • 1970-01-01
    • 2021-02-05
    • 2011-12-20
    • 1970-01-01
    • 1970-01-01
    • 2016-07-02
    • 1970-01-01
    • 2020-12-05
    相关资源
    最近更新 更多