Превратите его в вызываемый объект (так как это - каково это действительно.)
class CalcSomething(object):
def __init__(self):
self._cache = {}
def __call__(self, a):
if a not in self._cache:
self._cache[a] = self.reallyCalc(a)
return self._cache[a]
def reallyCalc(self, a):
return # a real answer
calcSomething = CalcSomething()
Теперь можно использовать calcSomething
, как будто это была функция. Но это остается опрятным и автономным.
Панель или элемент управления на панели должны иметь фокус. Обратите внимание, что если элемент управления с фокусом имеет полосы прокрутки, он будет прокручиваться вместо панели.
Перемещение колеса прокрутки должно вызывать событие MouseMove элемента управления. Аргумент MouseEventArgs имеет свойство с именем Delta, которое дает (подписанное) количество выемок, на которые перемещается колесико мыши. Вы можете использовать это свойство для прокрутки панели.
В файл конструктора вы можете добавить следующую строку кода. событие MouseWheel не отображается в списке «События» в окне «Свойства».
this.Panel1.MouseWheel+= System.Windows.Forms.MouseEventHandler(this.Panel1_MouseWheel);
Panel1_MouseWheel будет запускаться, когда вы прокручиваете колесико мыши
Добавьте код в файл .cs