pvbrowser manual
Back Content Forward

slot програмиране

Тук е показан елементарен пример на slot-ове за стандартно използване на бутони и текстови заглавия. При натискане на "pushButton2" номера на щракванията ще бъде показан на "textLabel1". При щракване на "pushButton2", маската mask1 ще бъде извикана, защото програмата ще се върне към цикъла в "pvMain".

typedef struct // (todo: define your data structure here)
{
  int click; // number of clicks
}
DATA;

static int slotInit(PARAM *p, DATA *d)
{
  if(p == NULL || d == NULL) return -1;
  memset(d,0,sizeof(DATA));
  return 0;
}

static int slotButtonEvent(PARAM *p, int id, DATA *d)
{
  if(p == NULL || id == 0 || d == NULL) return -1;
  if(id == pushButton1)
  {
    return 1; // call mask 1
  }
  if(id == pushButton2)
  {
    pvPrintf(p,textLabel1,"click %d",d->click++);
  }

  return 0;
}

Back Content Forward