Как делают меня двойной буфер Панель?

Если вы установили свой web3 следующим образом:

npm install --save ethereum/web3.js

проверьте файл package.json, чтобы увидеть, как эта библиотека просматривается, возможно, это будет ethereum/web3. Таким образом, ваш импорт должен выглядеть примерно так:

import Web3 from 'ethereum/web3'

Если вы хотите установить пакет web3 из npm, вы можете просто сделать это: и импортировать, как вы сделали. Согласно https://www.npmjs.com/package/web3

19
задан Uwe Keim 2 December 2018 в 16:17
поделиться

2 ответа

Winform panels have a DoubleBuffered property.

Edit: I should have noticed that it was protected. Others have described how to sub-class it. :)

4
ответ дан 30 November 2019 в 02:52
поделиться

Вам необходимо получить данные из Panel или PictureBox.

Это имеет ряд последствий в зависимости от того, как вы решили включить буферизацию.

Если вы установите флаг this.DoubleBuffer, то все будет в порядке.

Если вы вручную обновляете стили, вам нужно нарисовать форму самостоятельно в WM_PAINT.

Если вы действительно чувствуете амбициозность, вы можете сохранить и нарисовать свой собственный задний буфер в виде растрового изображения.


using System.Windows.Forms;

public class MyDisplay : Panel
{
    public MyDisplay()
    {
        this.DoubleBuffered = true;

        // or

        SetStyle(ControlStyles.AllPaintingInWmPaint, true);
        SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
        UpdateStyles();
    }
}
24
ответ дан 30 November 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: