上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 42 下一页
摘要: 安装NetBeans 我的操作系统是Fedora7,操作系统自带Eclipse,但是由于缺少Java运行库,所以只能运行,不能调试。为了简单起见,我去Sun公司网站下载了NetBeans5.5.1(带JDK),文件名称为:jdk-6u2-nb-5_5_1-linux-ml.bin,大小为143072256 字节。 安装很简单,先执行chmod +xjdk-6u2-nb-5_5_1-linux-ml.bin,然后运行bin文件即可。会出现一个图形安装向导,跟着向导安装,很简单。 你可以在Applications->Programming下找到NetBeans的启动菜单,也可以执行下面的命令 阅读全文
posted @ 2007-09-19 14:34 反正我信了 阅读(139) 评论(0) 推荐(0)
摘要: WM_CONTEXTMENU消息会在右键点击窗口客户区的时候发出,通过处理该消息,我们可以在此时弹出上下文菜单。 我们可以添加一个菜单资源。如下图: 我们利用CMainFrame的成员变量CCommandBarCtrl m_CmdBar来显示我们的上下文菜单。LRESULT CMainFrame::OnContextMenu(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled){ CMenu menu; menu.LoadMenu(IDR_MENU1); CMenuHandle menuPopup = menu.GetSubM 阅读全文
posted @ 2007-08-08 20:26 反正我信了 阅读(415) 评论(0) 推荐(0)
摘要: 1)从http://sourceforge.net/project/showfiles.php?group_id=109071中下在WTL8.0的Release包WTL80.exe2)执行WTL80.exe,按照默认路径解压到C:/WTL80目录3)命令行中运行C:/WTL80/AppWiz/setup80.js 脚本,这个脚本负责创建VC2005使用的WTL向导文件4)现在可以开始使用VC2005编程了,注意工程的C++和Resource属性Additional Include Directories设置为C:/WTL80/include。Debug和Release模式都要设置。如果是vc6 阅读全文
posted @ 2007-08-02 10:15 反正我信了 阅读(173) 评论(0) 推荐(0)
摘要: 如何让整个窗口具有透明效果呢? 使用如下的类:// class CLayeredImpl// Layered Windowtemplate <class T>class ATL_NO_VTABLE CLayeredImpl{public: HMODULE m_hUser32LWA; CLayeredImpl() { } virtual ~CLayeredImpl() { } LONG SetLayeredStyle() { T* pT = static_cast<T*>(this); ATLASSERT(::IsWindow(pT->m_hWnd)); LONG 阅读全文
posted @ 2007-07-25 15:35 反正我信了 阅读(243) 评论(0) 推荐(0)
摘要: 如何改变窗口的背景色,但是不影响OnPaint函数内部的绘图逻辑呢?举例:LRESULT OnEraseBackground(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled) { // handled, no background painting needed CPaintDC dc(m_hWnd); RECT rect; GetClientRect(&rect); CBrush brush; brush.CreateSolidBrush(RGB(255,134,255)); dc.Fil 阅读全文
posted @ 2007-07-25 15:33 反正我信了 阅读(311) 评论(0) 推荐(0)
摘要: Form窗口实际上就是派生自对话框类CDialogImpl类。因为也有一个对话框资源,所以我们可以使用可视化编辑的方式添加控件。class CFormView : public CDialogImpl<CFormView>{public: enum { IDD = IDD_FORM_FORM }; BOOL PreTranslateMessage(MSG* pMsg) { return CWindow::IsDialogMessage(pMsg); } BEGIN_MSG_MAP(CFormView) END_MSG_MAP()}; 注意当手动添加对话框资源时,需要将Border属 阅读全文
posted @ 2007-07-25 15:30 反正我信了 阅读(297) 评论(1) 推荐(0)
摘要: 下面是我通过使用向导生成的代码:class CDemoView : public CWindowImpl<CDemoView, CTreeViewCtrl>{public: DECLARE_WND_SUPERCLASS(NULL, CTreeViewCtrl::GetWndClassName()) BOOL PreTranslateMessage(MSG* pMsg) { pMsg; return FALSE; } BEGIN_MSG_MAP(CDemoView) END_MSG_MAP()}; 注意和普通窗口的区别:1)CWindowImpl第二个木板参数为CTreeViewCt 阅读全文
posted @ 2007-07-18 14:47 反正我信了 阅读(169) 评论(0) 推荐(0)
摘要: WTL提供了3个类用来分隔窗口:CSplitterImpl、CSplitterWindowImpl、CSplitterWindowT。CSplitterImpl类实现了最主要的分割窗口所需要的函数。CSplitterWindowImpl继承了CSplitterImpl类,它实现了一个什么都不做的OnEraseBackground函数,还实现了一个OnSize函数,该函数可以自动调整分割窗口的客户区大小。通常情况下,我们可以直接使用CSplitterWindowImpl类作为我们窗口的父类,如果这两个函数的行为达不到我们的要求,我们可以改写继承自CSplitterImpl类的消息处理函数。CSp 阅读全文
posted @ 2007-07-18 14:23 反正我信了 阅读(359) 评论(0) 推荐(0)
摘要: Windows下,每个线程都可以拥有一个消息队列,通常UI线程默认就拥有自己的消息队列,Work Thread需要自己调用PeekMessage来创建自己的消息队列。 消息是一个数据结构,下面是它的定义:typedef struct tagMSG { HWND hwnd; UINT message; WPARAM wParam; LPARAM lParam; DWORD time; POINT pt;#ifdef _MAC DWORD lPrivate;#endif} MSG 每个消息都包含了要接收消息的窗口的句柄,消息ID,两个参数,还有其他信息。SDK下的消息循环通常这样写:while . 阅读全文
posted @ 2007-07-18 14:16 反正我信了 阅读(263) 评论(0) 推荐(0)
摘要: 点击这里下载插件,将插件放到/usr/lib/audacious/General文件中即可。在 Fedora 7中试验通过。目前仅支持本地歌词文件,歌词文件名和歌曲名相同,后缀为lrc,文件编码格式支持UTF-8和GB2312 阅读全文
posted @ 2007-07-18 09:29 反正我信了 阅读(512) 评论(0) 推荐(0)
上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 42 下一页