我新建了个TimeEdit类,它是继承Edit类的,在KeyUp消息下已经实现了我所要的时间输入超做,但只要一用到鼠标就不行了同样的选择函数  TimeEdit::SetSel(6,8,FALSE);//设置被选中的两个字符,在鼠标按下的时候不起作用,这样00:00:00就变成了00:100:00请问该怎么解决呢?
我代码如下:
if((nChar>='1'&&nChar<='9')||(nChar>='a'&&nChar<='i'))
{
RUN=TRUE;
if(pos==0)
{
if(pass==FALSE)
{
            Editctrl::SetSel(0,2,FALSE);//设置被选中的两个字符
            pass=TRUE;
}
else
{
            pass=FALSE;
pos=3;
} }
else if(pos==3)
{
         if(pass==FALSE)
{
            Editctrl::SetSel(3,5,FALSE);//设置被选中的两个字符
            pass=TRUE;
}
else
{
            pass=FALSE;
pos=6;
}
}
else if(pos==6)
{
if(pass==FALSE)
{
            Editctrl::SetSel(6,8,FALSE);//设置被选中的两个字符
            pass=TRUE;
}
else
{
            pass=FALSE;
pos=0;
}
}
}
else if(nChar==39||nChar=='%')//小键盘的左右键值
{
  if(nChar==39)
{
switch(pos)
{
case 0:
            Editctrl::SetSel(3,5,FALSE);//设置被选中的两个字符
            pass=TRUE;
        pos=3;
   break;
case 3:
    Editctrl::SetSel(6,8,FALSE);//设置被选中的两个字符
            pass=TRUE;
pos=6;
break;
case 6:
            Editctrl::SetSel(0,2,FALSE);//设置被选中的两个字符
            pass=TRUE;
pos=0;
break; }
  }
  else
  {
switch(pos)
{
  case 0:
              Editctrl::SetSel(6,8,FALSE);//设置被选中的两个字符
              pass=TRUE;
          pos=6;
   break;
    case 3:
      Editctrl::SetSel(0,2,FALSE);//设置被选中的两个字符
             pass=TRUE;
 pos=0;
     break;
    case 6:
            Editctrl::SetSel(3,5,FALSE);//设置被选中的两个字符
            pass=TRUE;
pos=3;
break;
}
  }
}