亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wn_gdate.c

?? BOSS窗口開發 C 語言程序庫
?? C
字號:
/*
** The Window BOSS's Data Clerk
** Copyright (c) 1988 - Philip A. Mongelluzzo
** All rights reserved.
**
** wn_gdate - get date from window with gross validation 
**
** Copyright (c) 1988 - Philip A. Mongelluzzo
** All rights reserved.
**
*/

#include "windows.h"                    /* standard stuff */

/*
************
* wn_gdate *
************
*/

/*
** wn_gdate(fun,frm,fld,wn,row,col,prmpt,atrib,fill,month,day,year,ubuff,hlpmsg,errmsg)
**
**    int        fun - fucntion code (SET || XEQ)
**    (WIFORM)   frm - form pointer  (actual || NFRM)
**    int        fld - field # in form (actual || NULL)
**    (WINDOWPTR) wn - window pointer
**    int        row - row in window where data input begins
**    int        col - col in window where data input begins
**    (char *) prmpt - field promt (call with NSTR for none)
**    unsigned atrib - field (not prompt) atributes 
**    char      fill - field fill character
**    (int *)  month - pointer to int for month (1-12)
**    (int *)    day - pointer to int for day (1-31)
**    (int *)   year - pointer to int for year (0-99)
**    (char *) ubuff - pointer to char array of 10 bytes for editing 
**    (char *)hlpmsg - pointer to help message (call with NSTR for none)
**    (char *)errmsg - pointer to err message (call with NSTR) for none)
**
** RETURNS:
**
**    MONTH, DAY, and YEAR via pointers.
**
**    NULL if error, else the non zero value returned from wn_input.
**
** NOTES:
**
**  FUN -   fun can only be SET for form setup, or XEQ for immediate
**          execution.  When called with SET, valid arguements for both
**          "frm" and "fld" must be specfied.  frm is the field pointer
**          returned from frmopn(), and fld is the field sequence number
**          in the form for this field.  When called with XEQ frm must
**          be NFRM and fld must NULL.
**
**  UBUFF - Editing buffer.  Must be of sufficent size to hold the
**          data as it is entered.  Typical value is the length
**          of the mask + 2 bytes (strlen(mask)+2).
**
**          On entry, the first byte of ubuff should be 
**          a null, otherwise wn_input assumes there is valid
**          data there and will enter edit mode.  This can be 
**          handy if there is a need for prefilled but editable
**          fields.  In actual pratice, wn_input uses this
**          buffer for both initial character data entry and
**          subsequent editing.
**
**          On return, ubuff contains the actual data entered in
**          character format with fill and mask characters as
**          spaces (e.g. "12 12 88").
**
**  Only basic reasonability checks are made.  Therefore, dates like
**  02/31/88 can be returned.
**
**  Calls wn_input to perform data entry.
**
**  Data must satisfy validation checks for function to return.
*/

wn_gdate(fun,frm,fld,wn,row,col,prmpt,atrib,fill,month,day,year,ubuff,hlpmsg,errmsg)
int fun;                                /* SET or XEQ */
WIFORM frm;                             /* form pointer or NFRM */
int fld;                                /* field number or NULL */
WINDOWPTR wn;                           /* window to use */
int row, col;                           /* position of input field */
char *prmpt;                            /* prompt string */
unsigned atrib;                         /* data entry atribute */
char fill;                              /* fill char */
int *month, *day, *year;                /* ints of month,day,year */
char *ubuff;                            /* returns "mm/dd/yy" */
char *hlpmsg,*errmsg;                   /* help and error messages */
{
int m, d, y;                            /* month day & year */
char mbuf[10];                          /* local buffer */
char *p;                                /* scratch */
unsigned int r;                         /* sscanf return value */
int rv;                                 /* return value */
int eflg;                               /* error flag */

  if(fun != SET && fun != XEQ)          /* saftey check */
    return(NULL);

  if(fun == SET) {                      /* set up */
    if(frm[fld]->pself != (char *)frm[fld])
      wns_ierr("wn_gdate");             /* die if memory is mangled */
    frm[fld]->wn = wn;                  /* set window */
    frm[fld]->row = row;                /* set row */
    frm[fld]->col = col;                /* set col */
    frm[fld]->prmpt = prmpt;            /* set prompt */
    frm[fld]->atrib = atrib;            /* set attribute */
    frm[fld]->fill = fill;              /* set fill character */
    frm[fld]->fcode = GDATE;            /* function code */
    frm[fld]->v1.vip = month;           /* &month */
    frm[fld]->v2.vip = day;             /* &day */
    frm[fld]->v3.vip = year;            /* &year */
    frm[fld]->v4.vcp = ubuff;           /* &ubuff */
    frm[fld]->v5.vcp = hlpmsg;          /* &hlpmsg */
    frm[fld]->v6.vcp = errmsg;          /* &errmsg */
    return(TRUE);
  }

begin:
  if(!(rv=wn_input(wn,row,col,prmpt,"##/##/##",fill,atrib,ubuff,hlpmsg))) {
    *ubuff = NUL;                       /* load ubuff with a bad date */
    return(NULL);                       /* indicate error */
  }
  if(wni_frmflg) return(TRUE);          /* wn_frmget in progress */
  if(wns_escape) return(rv);            /* escape pressed ?? */
  strcpy(mbuf,ubuff);                   /* load my buffer */
  p = mbuf;                             /* set pointer */
  while (*p) {                          /* set up to pluck */
    if(*p == '/')                       /* the slash */
      *p = ' ';                         /* and stash a space */
    p++;                                /* bump pointer */
  }                                     /* continue till done */
  r =  sscanf(mbuf, "%02d %02d %02d", &m, &d, &y);
  if(r == EOF || r == 0) {              /* no data - set to zip */
    *month = *day = *year = 0;          /* set to zip */
    return(rv);                         /* and return */
  }
  eflg = FALSE;
  if(r != 3) eflg = TRUE;               /* not enuf data */
  if(m < 1 || m > 12) eflg = TRUE;      /* bad month */
  if(d < 1 || d > 31) eflg = TRUE;      /* bad day */
  if(y < 0 || y > 99) eflg = TRUE;      /* bad year */
  if(eflg) {
    wn_iemsg(errmsg);                   /* do error thing */
    goto begin;                         /* and start over */
  }
  *month = m;                           /* load user month */
  *day = d;                             /* and day */
  *year = y;                            /* and year */
  return(rv);                           /* all is well.. in gross sense */
}

/* End */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美不卡123| 日韩欧美亚洲国产另类| 成人免费看的视频| 国产黄色91视频| 国产传媒久久文化传媒| 国产成人亚洲综合色影视| 国产麻豆精品在线| 国产精品影视天天线| 国产成人福利片| 成人福利在线看| 在线免费一区三区| 911精品国产一区二区在线| 7777精品伊人久久久大香线蕉超级流畅| 欧美日韩一区不卡| 日韩欧美黄色影院| 中文在线免费一区三区高中清不卡| 欧美激情中文字幕一区二区| 中文字幕一区二区三区色视频| 国产精品精品国产色婷婷| 亚洲青青青在线视频| 亚洲va韩国va欧美va精品| 久久精品国产久精国产爱| 国产91精品一区二区麻豆亚洲| 99这里只有精品| 欧美日韩精品一区二区在线播放| 日韩一级片网址| 国产精品福利一区| 天天av天天翘天天综合网 | 欧美三级在线视频| 91 com成人网| 国产欧美一区二区三区在线看蜜臀| 亚洲人精品午夜| 美国欧美日韩国产在线播放| 成人小视频在线| 4438成人网| 亚洲欧美一区二区在线观看| 午夜欧美大尺度福利影院在线看| 国产麻豆日韩欧美久久| 欧美色图第一页| 国产精品素人一区二区| 日韩二区三区四区| 色综合久久久久久久久| 精品第一国产综合精品aⅴ| 亚洲综合激情另类小说区| 国产传媒欧美日韩成人| 91精品婷婷国产综合久久| 亚洲欧美在线观看| 国产在线精品免费| 欧美美女一区二区三区| 亚洲同性gay激情无套| 激情五月婷婷综合| 欧美丰满嫩嫩电影| 一区二区日韩av| 99精品视频在线观看免费| 日韩你懂的电影在线观看| 亚洲国产日韩精品| 99精品桃花视频在线观看| 久久久久久亚洲综合| 麻豆91精品视频| 欧美日韩国产高清一区二区| 亚洲精品国产精华液| 成人久久久精品乱码一区二区三区| 欧美一级黄色录像| 日韩av一区二| 欧美年轻男男videosbes| 亚洲国产日韩a在线播放| 97精品久久久久中文字幕| 国产精品美女一区二区三区| 国产专区综合网| 久久奇米777| 国产精选一区二区三区| 26uuu国产在线精品一区二区| 日本va欧美va精品发布| 91精品黄色片免费大全| 免费欧美高清视频| 欧美久久久影院| 日韩精品欧美精品| 日韩三级伦理片妻子的秘密按摩| 蜜桃久久av一区| 日韩欧美在线123| 韩国三级电影一区二区| 精品国产91洋老外米糕| 国产精品1024| 国产精品乱码一区二三区小蝌蚪| 99精品视频在线观看免费| 亚洲另类一区二区| 欧美日韩一区二区三区视频| 免费在线观看成人| 国产日韩影视精品| 99国产精品久久久久| 亚洲国产日韩综合久久精品| 欧美一级欧美一级在线播放| 韩国午夜理伦三级不卡影院| 国产精品三级电影| 在线观看一区二区视频| 美女尤物国产一区| 国产欧美一区二区精品性| 91丨porny丨户外露出| 天堂va蜜桃一区二区三区漫画版| 337p日本欧洲亚洲大胆精品| av电影在线观看不卡| 肉肉av福利一精品导航| 欧美激情一区二区三区蜜桃视频| 91视频免费播放| 久久成人综合网| 亚洲欧洲精品成人久久奇米网| 欧美日韩aaa| 9色porny自拍视频一区二区| 丝袜亚洲另类欧美| 国产精品天天看| 欧美高清激情brazzers| 成人在线视频一区二区| 日韩不卡一区二区| 国产精品福利一区| 欧美电影免费提供在线观看| 日本精品视频一区二区三区| 精品一区二区三区在线观看国产| 中文字幕在线观看一区| 日韩小视频在线观看专区| av一区二区三区在线| 极品少妇xxxx精品少妇| 亚洲一区二区在线免费观看视频| 欧美mv日韩mv亚洲| 欧美另类变人与禽xxxxx| www..com久久爱| 国内久久精品视频| 亚洲成人综合网站| 亚洲精品伦理在线| 中文字幕乱码日本亚洲一区二区 | 久久久久久久精| 91精品国产入口| 91在线观看美女| 国产麻豆精品在线| 久久成人免费电影| 免费亚洲电影在线| 日韩va亚洲va欧美va久久| 亚洲综合色在线| 亚洲美女偷拍久久| 亚洲色欲色欲www在线观看| 久久久久成人黄色影片| 精品99999| 精品免费日韩av| 精品国产乱码久久久久久夜甘婷婷| 欧美亚洲自拍偷拍| 在线看日本不卡| 欧美日韩精品欧美日韩精品| 色悠悠久久综合| 色综合久久88色综合天天免费| 成+人+亚洲+综合天堂| jvid福利写真一区二区三区| 国产成人精品亚洲日本在线桃色| 国产精品456| 粉嫩嫩av羞羞动漫久久久| 国产一区二区三区四| 丁香激情综合五月| 成人av电影在线网| 一本大道久久a久久精二百| 色婷婷激情久久| 欧美色网站导航| 337p亚洲精品色噜噜| 日韩一区二区电影在线| 久久女同性恋中文字幕| 欧美高清在线一区二区| 综合色中文字幕| 亚洲成av人片| 国内精品国产三级国产a久久| 国产成人综合自拍| 91理论电影在线观看| 欧美日韩精品久久久| 久久综合九色综合97婷婷| 国产精品毛片a∨一区二区三区| 亚洲色欲色欲www| 三级欧美韩日大片在线看| 国产精品18久久久久久久久| 成人午夜视频福利| 欧美色图免费看| 久久久久国产成人精品亚洲午夜| 亚洲男人天堂一区| 美女视频黄a大片欧美| 丁香啪啪综合成人亚洲小说| 欧美性色aⅴ视频一区日韩精品| 91麻豆精品国产自产在线观看一区 | 国产成a人亚洲精| 一本久道中文字幕精品亚洲嫩| 制服丝袜亚洲色图| 国产精品家庭影院| 人妖欧美一区二区| 99精品视频一区| 日韩欧美色综合| 亚洲午夜电影在线观看| 国产精品69毛片高清亚洲| 欧美日韩国产中文| 中文av一区特黄| 麻豆精品一区二区综合av| 91小视频在线| 久久综合狠狠综合| 婷婷国产在线综合| 一本高清dvd不卡在线观看| 久久久精品影视| 三级欧美韩日大片在线看|