相关函数/结构体
CWnd::CreateSolidCaret();
定义:void CreateSolidCaret(int nWidth,int nHeight);
在View类中加入WM_CREATE消息的响应函数OnCreate,加入CreateSolidCaret()
效果:没有显示插入符呀!
QUOTE FROM MSDN
The CreateSolidCaret method automatically destroys the previous caret shape, if any, regardless of which window owns the caret. Once created, the caret is initially hidden. To show the caret, the ShowCaret method must be called.
加上ShowCaret();
Step03、让插入符跟字体大小相关
相关函数/结构体:
获取字符信息CDC::GetTextMetrics
字符属性结构体TEXTMETRIC Structure
code
定义:CBitmap bitmap;要放在View类的头文件中,并将其访问权限设置为private。为什么private?因为只在View类中调用。
QUOTE
若将CBitmap bitmap放在CTextView中,bitmap为局部变量,当OnCreate()执行完毕会发生析构,相关的资源也会被销毁。那么说那幅位图也被销毁?应该不会吧?
相关函数
CWnd::CreateCaret();
定义:void CreateCaret(CBitmap* pBitmap);
Quote from MSDN
The bitmap must have previously been created by the CBitmap::CreateBitmap member function, the CreateDIBitmap Windows function, or the CBitmap::LoadBitmap member function.
所以需要Step01中把bitmap定义为全局变量。
OnCreate消息响应函数源代码
SQL GROUP BY;
GROUP BY必须在WHERE语句段之后
聚合函数不能再WHERE语句中使用,必须使用HAVING子句代替。
PS:order by必须放在最后。估计是DBMS选取数据完成最后才排序,SQL语句也按照这一过程制定语法。
上述语句运行不通过。
为什么?百度知道。
一般地,改字段名可以用这条语句:
alter table A rename column a to c
但是,实际应用中,我们往往是用J-SQL进行编译,而J-SQL不支持修改字段名,所以,如果一定要修改字段名,那么只有通过变通的方法了,具体思路为:
1.新建一个字段,取名为c;
2.将字段a的内容拷贝到c;
3.删除字段a;
修改字段名、删除字段、修改数据表名等因为牵连到其他元素:外键等,所以要慎重操作。实在需要,就在企业管理器中操作。
这篇文章是关于数据库的提纲。
(在有的DBMS中也称作Database,数据库)