置顶:
(2010-11-21 00:46)
没篇关于javascript(Dom)的博文中,有个地方页面有些错误
会变成:
或者
我们假设有这么一个程序,类A中有一个foo方法,其中又重载了很多个foo的方法(参数表不一样)。然后A的派生类B重写了一个foo方法(在A中重载的多个foo中的其中一个)。
然后我们就会发现,类A中的其他foo方法都对派生类B不可见了。也就是说派生类B的对象在想调用A类中其他重载的foo方法都无法实现。
这是什么原因呢???设计者认为当你在派生类中重写一个方法的时候,你也就要对这个方法的其他重载进行重写操作。所有就直接隐藏了。
现说设置背景颜色。
我用了很多方法都不行,查了很多资料,现在说一下解决方案吧。
在XXXXXXDlg.头文件的protected:中加入CBrush
m_brush;
在XXXXXXDlg.cpp文件中的OnInitDialog()初始化函数中加入画刷m_brush.CreateSolidBrush(RGB(255,255,255));RGB中的颜色自己定义。
然后在类向导中添加WM_CTLCOLOR消息函数。在里面只写一句话:return
m_brush;
背景颜色就改了。
现在说怎么设计透明了,那就更简单了。
在OnInitDialog()初始化函数中添加两行代码:
SetWindowLong(GetSafeHwnd(),GWL_EXSTYLE,GetWindowLong(GetSafeHwnd(),GWL_EXSTYLE)|WS_EX_LAYERED);
SetLayeredWindowAttributes(0,200,LWA_ALPHA);
第二行中的200为透明度,0为全透明,255为不透明。
喜欢没有标题栏的对话框怎么样才能让鼠标点击拖动呢?
首先当然我们要添加两个消息响应函数。在“类向导”里,找到“消息”,找到里面的“WM_NCHITEST”,然后添加处理程序。
第二个消息响应函数是WM_LBUTTONDOWN.
开始写代码了,
LRESULT CTimeDemoDlg::OnNcHitTest(CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
UINT nResult =
CDialog::OnNcHitTest(point);
return nResult == HTCLIENT ? HTCAPTION :
nResult;//鼠标的坐标在客户区么?在的话就把它当成标题栏
return CDialogEx::OnNcHitTest(point);
}
void CTimeDemoDlg::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
SendMessage(WM_SYSCOMMAND, SC_MOVE,
好久没写博客了,从今天开始要写c++内容了,已经不怎么搞.net了。先讲讲c++的学习过程或者是方向吧。
首先,选择书,因为学c++不像.net那样,有那么多的视频教程可以看。有也只有孙鑫老师的好点吧,可那也是VC的内容。书的话,初学者用《c++程序设计语言》(特别版)。这本书和其他国产的书最大的区别是:国产的其他书只是教你怎么写程序,而没有教你怎么设计一个程序,这本书做到了。这本书看过五六遍后(说实话,看一遍已经要人老命了),就可以读一本叫《Effective
C++》,这本书不用解释太多,经典中的经典了。最后你可以看一本《C++沉思录》了。这本书很给力,这本书很经典。这本书最好你已经快是大牛了再看吧。这种书看完一本少一本。
书就这么完了。讲讲学习基础怎么个学习法,当然,最好把c忘了。然后学c++基础语法、面向对象。到这里,不要认为c++就这么完了。c++三大经典只学了一而已,还要重点学模板和标准库,没了这两个,c++那就不叫c++了。(这也是国内的教育不行的原因,随便一本c++书,到面向对象和IO流和文件就结束了。)
这个是用博客园一博友的工具从凡客上面获取下来的,是最新的。下面就是T-sql代码,可以之间建立数据库:
create database DB_Pro_City_PostCode
on
(name=DB_Pro_City_PostCode_dat,
filename='D:\省市邮编区号数据库\DB_Pro_City_PostCode.mdf',
size=10000KB,
filegrowth=5%)
LOG on
(name=DB_Pro_City_PostCode_log,
filename='D:\省市邮编区号数据库\DB_Pro_City_PostCode.ldf',
size=10000KB,
filegrowth=5%)
use DB_Pro_City_PostCode
GO
create table Province
(
[Id] int not null primary key,
[Name] nvarchar(10) not null
)
Go
create table City
(
[Id] int not null primary key,
[ProvinceId] int not null,
constraint fk_ProvinceId
foreign
这两个都是删除元素,但是两者还是有区别的。
remove()这个方法呢是删除被选元素的所有文本和子元素,当然包括被选元素自己。
而empty()呢,被选元素自己是不会被删除的。
比如:
<div>
<p>我是cjfl1234</p>
</div>
如果是$("div").remove()的话,就全部都没了。
而$("div").empty()的话,会留下<div></div>。
想用在cmd中使用telnet命令,但是在win7上说telnet不是内部的命令,真叫人摸不着头脑,研究了几天后,突然发现,win7的telnet默认没有添加这个功能,就和IIS一样,需要手动添加。
方式:开始——控制面板——程序和功能,里面的左上角有个打开和关闭windows功能。进去后就能看到Telnet服务端和Telnet客户端。勾上,点确定。等装好后就OK了。
(2011-11-26 21:06)
看到这个题目可能有点晕,一般我们截取字符串是用split以字符进行分割的(当然也用字符数组)。
比如:
(2011-11-05 15:13)
如果签名相同的方法在基类和派生类中都进行了声明。但该方法没有声明为virtual和override,派生类方法就会隐藏基类的方法。
大多数情况下,这都是重写方法,而不是隐藏方法。
假定有一个类为Goods类,它的派生类为TV类,TV有个sell这个方法:
code:
(2011-11-05 00:47)