小编Dav*_*vez的帖子

重绘时如何修复面板闪烁?

我有一个我已经子类化并且设置为DoubleBufferedtrue 的面板,我经常需要刷新绘图但是它闪烁并且不知道为什么.

private delegate void MyDelegate();

public void heartBeat()
    {
        while (true)
        {
            if (map.processNubots(rules))
            {
                if (this.InvokeRequired)
                {
                    this.Invoke((MyDelegate)delegate
                    {
                        //drawPanel.SuspendLayout();
                        drawPanel.Refresh();
                        displayGrid();
                        //drawPanel.ResumeLayout();
                    });
                }
                Thread.Sleep(500);
            }
            else
            {
                break;
            }
        }
    }

    public void displayGrid()
    {
        int i = 0;
        foreach (DictionaryEntry pair in map)
        {
            Monomer current = (Monomer)pair.Value;
            drawMonomers(current.getLocation(), current.getState());
            i++;
        }
    }

    public void drawMonomers(Point location, string state)
    {
        ...

        SolidBrush sb = new SolidBrush(mycolor);
        SolidBrush sbt = new SolidBrush(Color.Black);
        Graphics g …
Run Code Online (Sandbox Code Playgroud)

c# panel

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

特里的最短路径

对于Data Structures项目,我必须找到两个单词之间的最短路径,如"cat"和"dog,但我只允许一次更改一个字母.我正在尝试通过实现trie来实现它,并且可以似乎能够实现最短路径搜索.

猫 - >小孩 - > cog - >狗

所有单词的长度都相同,我从字典文件中填充它们.我们必须一个接一个地移动.所以中间的词必须是一个有效的词.

我认为使用trie不太可能,但任何人都有任何知识吗?

c++ algorithm trie shortest-path data-structures

3
推荐指数
1
解决办法
518
查看次数

标签 统计

algorithm ×1

c# ×1

c++ ×1

data-structures ×1

panel ×1

shortest-path ×1

trie ×1