addtopup(mainmenu で Exitが動作する方法は?

解決


はんにゃ  URL  2011-02-03 17:05:31  No: 72306  IP: [192.*.*.*]

環境はWindowsXP  VC6.0  glut32.dllです

    mainmenu=newpup();
    addtopup(mainmenu,"MainMenu %t|1 radius(or airgap)/LEFT,pitch/MIDDLE|2 move/LEFT,zoom/MIDDLE|3 profile on/off|4 integral profile on/off|5 Focusing/Viewside|6 reversal with airgap on/off|7 ?notWork?End/Exit|8 zoomin lenslet%m|9 thickness/reset all%m|10 direction Number%m",zoominMenu,thickmenu,diNumMenu); 

となっていて、

void MainLoop(void)
{
  short attached=1;
  static int value;    
  if( qtest() || !attached )
  { 
    switch (qread(&value))
    {
      case MENUBUTTON:  
            if (value == 1)  menval=dopup(mainmenu);
                                  /* right mouse button is pressed */
        switch (menval)
        {
          case 1:
            rdsvari();
            break;
          case 2: 
            movzoom();
            break; 
          case 3:
            setprfl(0);
            break;
          case 4:
            setprfl(1);
            break;
          case 5:  
            focusin();
            break;
          case 6:
            reversal();
            break; 
          case 7: winclose(gwcid);                                                      exit(0);
                  break;
            } /* end of  switch(menval)*/
        menval = -1; /* reset added  2011*/
        break;
}}}

とある。
ここで  1,2の選択はMOUSE位置の取得ができないのでとまるのですが
他のSubMenuは活きます。しかし、7番のExitがなんの応答もしません。
解決する方法は?

編集 削除
はんにゃ  URL  2011-02-06 08:23:23  No: 72307  IP: [192.*.*.*]

void MainLoop(void)
{

static int value;    

int value;
としたら  正常にExitしました。ご検討頂いた方に感謝します

編集 削除