登录
首页 » VC++源码 » VC 6.0 在程序中使用Calendar月历控件

VC 6.0 在程序中使用Calendar月历控件

于 2023-08-04 发布 文件大小:12.39 kB
0 290
下载积分: 2 下载次数: 1

代码说明:

VC 6.0 在程序中使用月历控件,其实和日历插件差不多,核心是调用Windows系统的Calendar,做了些功能的自定义。   实现月历控件的部分设置代码:   m_MonthCalCtrl.SetColor(MCSC_TITLETEXT,RGB(0,128,128));//设置标题条上的文本颜色   m_MonthCalCtrl.SetColor(MCSC_TITLEBK,RGB(178,178,0));//设置标题条背景颜色   m_MonthCalCtrl.SetFirstDayOfWeek(0);//设置星期一为一周的开始   //设置日期   void CCalendarDlg::OnSetToday()   {    //更新变量    UpdateData(TRUE);    //构造日期变量    CTime tm(m_nYear,m_nMonth,m_nDay,0,0,0);    m_MonthCalCtrl.SetCurSel(tm);//设置当前日期   }

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • vc++CThreadEx范例
    vc++CThreadEx范例源码,创建两个线程分别显示不同的图片,形成交替显示的效果,演示了线程同步和异步,并涉及到定时器的使用。在交替显示图片时,每半秒触发定时器,演示了在一个周期内创建线程、启动线程、向工作线程发出退出命令、等待工作线程、销毁工作线程、主线程停止交替显示,i交替取值0和1、解除同步、检验是否有消息到达等各个环节的实现代码。
    2022-03-03 18:54:02下载
    积分:1
  • VC++6.0 执行数据库事务的范例
    在VC++6.0程序中执行数据库事务的一个范例,是一个数据库的高级应用例子,关于设置ADO控件,方法如下:   (1)在程序中选择ResourceView视图,打开“Dialog”节点下的“IDD_AFFAIR_DIALOG”对话框资源,右键单击ADO Data控件,在弹出的菜单中选择Properties菜单项,选择通用选项卡,单击“生成”按钮,在连接选项卡中单击“…”按钮,打开当前文件夹中的Access数据库,单击“测试连接”按钮,单击“确定”按钮。   (2)右键单击DataGrid控件,在弹出的菜单中选择Properties菜单项,选择All选项卡,在DataSource项对应的Value值中重新选择IDC ADODC1项。   
    2022-07-23 05:48:05下载
    积分:1
  • VC 创建内存映像文件对象并使用
    VC++6.0 创建内存映像文件对象并使用,实现了写入内存映射文件和从内存映射文件中读取数据,比如将数据从内存映射文件读出,实现方法如下:   void CFileMapTransTxtDlg::OnRead()   {    //创建内存映像对象    HANDLE hMapping;    LPSTR lpData;    hMapping=CreateFileMapping((HANDLE)0xFFFFFFFF,NULL,PAGE_READWRITE,0,0x100,"MYSHARE");    if(hMapping==NULL)    {    AfxMessageBox("CreateFileMapping() failed.");    return;    }    //将文件的视图映射到一个进程的地址空间上,返回LPVOID类型的内存指针    lpData=(LPSTR)MapViewOfFile(hMapping,FILE_MAP_ALL_ACCESS,0,0,0);    if(lpData==NULL)    {    AfxMessageBox("MapViewOfFile() failed.");    return;    }    //给这段映像内存的数据赋给本地变量    m_strDest.Format("%s",lpData);    //释放映像内存    UnmapViewOfFile(lpData);    //更新数据    UpdateData(FALSE);   }
    2022-05-17 02:25:47下载
    积分:1
  • VC++基本鼠标操作——判断鼠标消息
    VC++基本鼠标操作——判断鼠标消息,操作方法:按下鼠标左键,移动鼠标即可绘制椭圆,直至释放左键!   void CBaseMouseDemoView::OnMouseMove(UINT nFlags, CPoint point)   {    if(bDrag)    {    ptUp=point;//记录鼠标的当前位置    DrawCircle();//画新圆    }    CView::OnMouseMove(nFlags, point);   }   void CBaseMouseDemoView::DrawCircle()   {    Invalidate(false);    CClientDC dc(this);//获取DC    CRect rect;    GetClientRect(rect); //获取客户窗口区域    CBrush brush(RGB(255,255,255));    dc.FillRect(rect,&brush);//填充背景色为白色    dc.Ellipse(ptDown.x,ptDown.y,ptUp.x,ptUp.y);//绘制矩形   }
    2022-03-19 16:04:24下载
    积分:1
  • VC++ 6.0 定制分割条(分隔条)的样式及大小
    VC++ 6.0 定制分割条,也就是窗体的分隔条,将窗口分隔成若干个部分,用来显示不同的内容,该窗格视图为CStaticSplitWnd4View,该窗格大小不能通过拖动改变,不过我们可以通过菜单命令动态改变大小,窗格视图为CView2,该窗格大小不能通过拖动改变,窗格视图CView3和CView4都可以通过分隔条的拖动来改变视图大校   本示例中的分隔条经过了初级的美化,而且也向用户展示了,如何通过分割条来固定分栏窗格视图的大小,如何让分隔条不支持拖动等功能。
    2023-08-22 18:20:04下载
    积分:1
  • VC++ 6.0制作的弹出式菜单
    VC++ 6.0制作的弹出式菜单,代码作者:一剑,这里主要是定义了CMainFrame::OnContextMenu函数来实现弹出式菜单,请参见以下核心代码:   void CMainFrame::OnContextMenu(CWnd* pWnd, CPoint point)   {    CMenu menu;    CMenu *popup;    //IDR_POP_MENU是菜单资源的ID号,是刚添加的菜单    menu.LoadMenu(IDR_POP_MENU);    ASSERT(menu);    //此函数用于得到子菜单的指针。    //由于需要的是“可弹出项”的第一层子菜单,因此用GetSubMenu(0)来得到。    popup=menu.GetSubMenu(0);    popup->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON,point.x, point.y,this);      }   然后需要定义几个菜单命令响应函数,请参见源代码文件。
    2022-03-30 01:28:38下载
    积分:1
  • VC++ 创建生成大文件
    VC创建大文件的例子,这个例子是VC++源码实例,面向VC++6.0运行环境。测试时注意生成的路径,要重新 设置一下,生成文件 不是问题,但生成大文件 往往会导致一系列问题,这个源码的实例向大家介绍如何避免出现这些问题。   // 处理出错信息   //获得信息   LPVOID lpMsgBuf; //Windows will allocate   ::FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,0,    GetLastError(),MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), //默认语言    (LPTSTR)&lpMsgBuf, 0, NULL );   //显示   ::MessageBox(0, (LPCTSTR)lpMsgBuf, _T("GetLastError"), MB_OK|MB_ICONINFORMATION );   //lpMsgBuf中是你要的错误提示.   //释放内存   ::LocalFree( lpMsgBuf );   return;
    2022-02-26 16:50:15下载
    积分:1
  • 用VC++实现各种进制间的转换小程序
    酷黑窗体风格的VC++进制转换程序,实现大家各种常用进制间的转换,比如十进制转二进制,八进制、十六进制,还包括了任意两种进制间的转换,用起来十分方便。程序的界面也很有个性,美化成了黑色风格。   注:在用户输入的时候,每个对应的输入框都有对应进制的判断机制,若用户输入错误,会弹出提示,是不能进行转换的。
    2022-10-13 18:50:03下载
    积分:1
  • 简单演示多线程的创建和使用VC++
    一个VC++ Win32程序执行单元——多线程 的创建和使用例子,测试时请在CMD控制台中运行Exe,之后看到的运行结果如图所示,代码部分,请参考以下:   HANDLE CreateThread(    LPSECURITY_ATTRIBUTES lpThreadAttributes, // 安全    DWORD dwStackSize, // 堆栈大小    LPTHREAD_START_ROUTINE lpStartAddress, // 起始地址(函数名)    LPVOID lpParameter, // 参数    DWORD dwCreationFlags, // 是否启动    LPDWORD lpThreadId // 新生成的线程ID   );   int main(int argc, char* argv[])   {    HANDLE hThreadProc;    DWORD dwThreadId;    hThreadProc=CreateThread(    NULL,    NULL,    ThreadProc,    NULL,    0, //使线程立即运行    &dwThreadId    );    printf("Now another thread has been created,ID=%d ",dwThreadId);    //等待新线程运行结果    ::WaitForSingleObject(hThreadProc,INFINITE);    ::CloseHandle(hThreadProc);    return 0;   }
    2022-03-26 13:48:22下载
    积分:1
  • VC++ 6.0 GetTickCount() 高精度计时功能的实现实例
    本源码演示在VC++ 6.0环境下实现高精度计时功能,可在此基础上修改完善成一个毫秒级计时器。运行编译文件后,单击窗口中的按钮,即可激活计时功能,在弹出的窗口中显示计时时间,以毫秒计,请参见截图。计时部分的具体实现代码请参考以下代码:   void CDemoDlg::OnTest()   {    //开始时间    DWORD dwStart = GetTickCount();    for (int i = 0; i < 10000; i++)    {    for (int j = 0; j < 10000; j++)    {    }    }    //结束时间    DWORD dwStop = GetTickCount();    //时间间隔    DWORD dwElapse = dwStop - dwStart;    CString strText = _T("");    strText.Format(_T("时间间隔:%d毫秒"), dwElapse);    AfxMessageBox(strText);   }
    2022-07-22 05:40:03下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载