////////////////////////////////////////////////////////////////////
/*

    KAB-studio.h


    (C)KAB-studio 1999 - 2002 ALL RIGHTS RESERVED.
        http://www.kab-studio.com/
        info@kab-studio.com

    MF 2002/09/30(Mon) No.176
    zMF 3600 ( Mag2 + Pubzine )
    sF ܂܂ ( URL: http://www.mag2.com/  ID: 0000012198 )
    sF Pubzine ( URL: http://www.pubzine.com/  ID: 590 )
*/
////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////
/*                QOOQNXROij̍XV                */
http://www.kab-studio.com/

EقƂ́[R̂SǉB
@Ol̃zbgn[uɂR̂SǉBvChcc炵B
[ Ol̃zbgn[u ]
http://www.kab-studio.com/Comic/HotHerb/

bCB
@Codian ̃VXetbÑy[WƂC܂BtH
_ƃt@CAςȂ悤ő傫ႤccB
[ Codian ]
http://www.kab-studio.com/Programing/Codian/
[ VXetbN ]
http://www.kab-studio.com/Programing/Codian/DLL_Hook_SClass/08.html


////////////////////////////////////////////////////////////////////
/*                        `[ʂȓL                        */
http://www.kab-studio.com/nikki2/

2002/09/22 (Sun)
@ߑO͂ՂƂ폑AɃ[Aߌ̓J^OBꂩ
 AIR BςȊϗ邿ViIccBLB

2002/09/23 (Mon)
@AIR ǂł[BxȂ Kanon ȏBViIɕ΂肪
Lォ͂邯ǁBy͂Ȃ悵BƂ
x Kanon B AIR ƉЂɒoJ^OBf[^
ǂ邩ȁ[B

2002/09/24 (Tue)
@͑̒B}CptbgJiF̃
}Kǂł͌܂ccjBptbgBd̓hL
g쐬ƂBvXeQ AIR wBS񂾁B̑wBv
oŁccBŏI񂪂ςB

2002/09/25 (Wed)
@̒BwɂBd̓hLg쐬BvO̓o[W
ǗƑρB CString::operator LPCTSTR() Ċ댯BPt@
ubNĂH@֎qȁBă}Cptbg
cbR~ӂB InternetDisk JsɁccB

2002/09/26 (Thu)
@QQxڂo߂Bd Java ̂`B AIR Tg
͔ǒ̂͐BD߂łƁ[B

2002/09/27 (Fri)
@d Apache T[o[Bގ̐ݒ肪ς̂ɂB
|eg̐ρB񂾂ǁBl̍Hwɂďڂ{ĂȂHH

2002/09/28 (Sat)
@钆͂TlłׂčƌāijB͂[ƁBP
p[tFNgt@ubNB Kanon ̂cucAȂh}bc
~ǁAoccBɂȂĂ炩ԃwb_[B
ˁB USER'S-SIDE AƕsccB


////////////////////////////////////////////////////////////////////
/*                         A                             */
http://www.kab-studio.com/Novel/Fuga/

@܏́@ω@|S|

u܂A䍁͗H݂ȑ݂Ȃ񂾁Bǂ̏ꏊ̂ǂȂł
邵AǂȐlԂ̂ǂȉbBłȁAԊOƂGbNX
ƂǍ񂾂Ƃv
@Ȃ炢mFƁAȂ^ɘb
Vlɂ͂킢B
ułAȂ񂾂ƂƂɂ񂪂ǂǂĂ킯BŁA
ɃtB^[|BĂ݂΁Aߐ؂̒ɑ
悤Ȃ񂾁ccȁHv
uȂÕwRv^[ɂCtccv
uƁB͂̃Vl̃obNAbv\͂̂ŁAv
킦Ăv
@́Ǎ͉ƊBƂImȏ𓾂ꂽƂ
AÂɍsւƈڂ̔\͂͑Ȃ̂B
u̕䍁Ƃ́AǂŏołHv
@܂mȂ𓾂邩ƕ͂͂Ƃ邪A͏΂ނ
B
u͂܂ŁBx͂̏m肽ȁv
uccm肽ȁA䍁̂Ɓccv
uccv
@ڂƙꂢ̌tɁA͓hBȂB
uccA܂bCAȂB܂v
@̌t𕷂ƁAAƎUB
uÁBAVlAbuĂ炦Hv
uAA͂ccv
@̂ӂ̂ƂăVĺAǂ֌WȂ̂낤ƍl
ĂBāAbÂ炢䍁݂̑Ƃ́ccB
u񂶂܁Aς̗mĒj̖{̖ړIAꂩ炾ȁv
uˁAȂ񂩎Bx炳Ă݂łCȂv
u͎ccʂɃCȂǁv
@₽݁AC₷B
uB\\`oAmA搶AX^bt݂̂Ȃ́AVnȊwHƂƂ
Ђɂ́B̉Ђ̉ĂBP҂Ēj
ẢЂ̐lv
uȂ񂾁ẢЂ́v
uN̏tɍ~藧ł͒mĂłH@|A
kv𐢊ԂɔF߂Av悾v
uF߂āccv
uƂāv
@ӂ́A킹B
uƂłȂCxgB̋@ɓ{A܂ł̊TO𕢂
ȕzR卑ɂAꂪ̌v̔[́ccv

                                                              ()


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
wccՂƂgslkāccǂȂHx
uccSRisĂȂ炵ccv
w_ccx
http://www.kab-studio.com/
_______________________________________________________________[KCM]


////////////////////////////////////////////////////////////////////
/*                       #pragma twice                            */
http://www.kab-studio.com/Programing/PragmaTwice/


@Version 9.15
ƃeLXgGfB^ۂI

u񂩂́Ar[EBhEɕ`悵Ă݂܂v
wA΂đSRĂȂˁx
ur[̓}EXƂ̓͂󂯂邽߂̂̂ǁAɕ\
߂̂̂AƂłȂƂˁv
w͂āAOɉENbNj[Ƃ݂ɁHx
uAꂪ́BŁAx͂ɑ΂o͂ĂƂˁv
wȒPHx
ufoCXReLXgĉĂHv
wAʂɕ`ƂɁccI@r[ł͕ςȂ
Ix
u䂱ƁBfoCXReLXgɂĂ Version 7.01 ( No.121 ) 
ǂݕԂĂ炤ƂāAĂ݂悤BƁA 
Version 9.05 ( No.166 ) ̂܂܂ȂAENbNƂ̃o֐
ĂȂĂˁv

void CSdiTestView::OnRButtonUp(UINT nFlags, CPoint point) 
{
    // ʏ̃}EXJ[\̈ʒu擾܂B
    CPoint cPoint;
    GetCursorPos( &cPoint );
    // t[EBhẼ|C^擾܂B
    CWnd *pcMainFrameWnd
        = AfxGetMainWnd();
    // j[o[擾܂B
    CMenu *pcMenuBar = pcMainFrameWnd->GetMenu();
    // ut@CvTuj[擾܂B
    CMenu *pcFileMenu
        = pcMenuBar->GetSubMenu( 0 );
    // |bvAbvj[\܂B
    pcFileMenu->TrackPopupMenu
        ( TPM_LEFTALIGN | TPM_TOPALIGN | TPM_LEFTBUTTON
        , cPoint.x
        , cPoint.y
        , pcMainFrameWnd
        );

    CView::OnRButtonUp(nFlags, point);
}

wBENbNj[̂ˁx
u̎Ɠ悤ɁACxg̃o֐Ă炢܂v
wnhĂˁBŁAȂ́Hx
uL[͂́v
wI@Ȃ񂩂Ƃx
u͂ȂƎvǁccbZ[W WM_CHAR v
wׂ͂ˁB͉ENbN̎ƓHx
uővv
w񂶂 ClassWizard Jā` CSdiTestView I WM_CHAR Ńo
֐ĕҏWƁx

void CSdiTestView::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) 
{
    // TODO: ̈ʒuɃbZ[W nhp̃R[hij

    CView::OnChar(nChar, nRepCnt, nFlags);
}

wĊɂł܂x
uꂪ MFC pӂĂꂽ WM_CHAR ̃nh֐B̑P
ꂽĂ܂BƂ킯ŁÂ悤ɏCāv

void CSdiTestView::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) 
{
    TRACE( "%c", nChar );

    CView::OnChar(nChar, nRepCnt, nFlags);
}

w %c Hx
u Version 5.04 ( No.069 ) łv
wA̎͂Ȃ̂ˁB񂶂rhĎsI@I@L[{[
h@ƃAEgvbgɂ̕I@Ɗccx
u̕AۂɃr[ɕ\ƃGfB^ۂȂ킯ˁv
wĂ݂Ix
uႠĂ݂܂傤B\@ Version 7.12 
( No.132 ) A MFC ł Version 7.14 ( No.134 ) QƁv
wσfoCXReLXgg킯ˁx
ułIv
włHx
úA_CAO̎Ƃ͈ႤAr[EBhEp̏
@ɂȂ܂v
wr[pHx
uB Version 7.15 ( No.135 ) łĕ`Ăłv
wʂƃfoCXReLXgɕ`eႤĂ[
̂ˁx
ur[ɂ͂̍ĕ`ȒPɂdg݂łBo
֐łv

void CSdiTestView::OnDraw(CDC* pDC)
{
    CSdiTestDoc* pDoc = GetDocument();
    ASSERT_VALID(pDoc);
    // TODO: ̏ꏊɃlCeBu f[^p̕`R[hǉ܂B
}

wA̊ԂɁx
u͍ŏpӂĂ郁o֐Bĕ`悳Ƃɂ̃o
֐Ă΂邩A̒ōĕ`悷悤ɂ΂킯v
wI@ CDC ĂI@Ăŕ`łႤ́Hx
uÃfoCXReLXg̓r[EBhÊAɑ
ĕ`悷΂킯v
wˁ[BccH@łAĕ` OnPaint() 
ăo֐ł񂶂Ȃx
uAƂ˂Ă邩B͂ CSdiTestView::OnDraw()  
CView::OnPaint() Ă΂ĂłB CSdiTestView::OnDraw() 
̒Ƀu[N|Cguāv
wقBrhĎsƂ~܂x
uĕ`ČĂAŏɕ\Ƃɂv
wĕ`Ȃ킯ˁBŁHx
uXebvAEg̃{^ccc[o[́qJbRorăAC
R̃{^āBꉟ CSdiTestView::OnDraw() Ă񂾊֐
ɖ߂邩v
wققBIx

void CView::OnPaint()
{
    // standard paint routine
    CPaintDC dc(this);
    OnPrepareDC(&dc);
    OnDraw(&dc);
}

wȂقǂˁ[A܂ CView::OnPaint() Ă΂āA̒ 
CSdiTestView::OnDraw() Ă΂Ă킯ˁx
u܂ OnDraw() ͉̃bZ[W̃nhȂāAr[N
X́qĕ`po֐rĂƁB OnPaint()  BeginPaint() 
KvŖʓ|A CView::OnPaint() ɉBĂłv
wA BeginPaint()  EndPaint() ȂHx
u̒ CPaintDC ăNXgĂłB̃NX
ɂĂłv
wց[A֗ˁ[x
u܁A̕ӂ͊yĂƂŁAۂɕ`悷镔Ă݂悤B
` CSdiTestView::OnDraw() ł邩A̒ŕ`悳
Ɓccv

void CSdiTestView::OnDraw(CDC* pDC)
{
    CSdiTestDoc* pDoc = GetDocument();
    ASSERT_VALID(pDoc);

    pDC->TextOut( 0, 0, "" );
}

w񂤂A͑ÔƓx
u₷łBāAfoCXReLXg擾ł
΁ACɂ邱ƂȂ`ł킯v
w̕ӂ͕֗ˁ[BccłAẴL[͂ƑSR֌W
ȂȂx
uB Version 7.16 ( No.136 ) ǂݕԂĂ炦Ε邯
ǁAĕ`𓥂܂`̏ꍇɂ́v

PF̓nhŁA̓f[^oϐɎĂB
QFInvalidateRect() ōĕ`wB
RFOnDraw() Ă΂邩Aoϐf[^ĂB
SF`悷B

uĂXebvKvɂȂ܂v
wcc[ɂ߂ǂ킯ˁx
ułȂB܂A͂oϐɎĂƂ납
B SdiTestView.h ̕Ɂv

class CSdiTestView : public CView
{
    // `悷镶B
    CString m_cMainTextStr;    // ǉB
// ȉB

uĊɒǉāv
w CString ɓ킯ˁx
u䂱ƁBō m_cMainTextStr  CSdiTestView ̃oϐ
A CSdiTestView ̂ǂ̃o֐g܂BƂ킯 
CSdiTestView::OnChar() ̂悤ɏCv

void CSdiTestView::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) 
{
    // oϐɓ͂ǉB
    m_cMainTextStr += nChar;
    // ĕ`wB
    InvalidateRect( NULL );

    CView::OnChar(nChar, nRepCnt, nFlags);
}

w m_cMainTextStr ɓ͂ĂccĂ͕̂邯ǁA 
+= Ȃ񂩂œ́Hx
uA@\ CString ɔĂ邩ˁBŁAǉ
`wƁv
w OnDraw() Ă΂킯ˁx
u䂱ƁBŁÁv

void CSdiTestView::OnDraw(CDC* pDC)
{
    CSdiTestDoc* pDoc = GetDocument();
    ASSERT_VALID(pDoc);

    // ܂łɓ͂ꂽóB
    pDC->TextOut( 0, 0, m_cMainTextStr );
}

uqr̂oϐ̂ɂȂv
wrhĎsccI@ł炷oI@Ȃ񂩁AȂ񂩃z
gɃGfB^ۂIIx
u\ȒPɂꂭ炢͂łĂƂˁv

/*
    Preview Next Story!
*/
wGfB^AƃJbRCCIx
u܂A{iIȃGfB^ɂ͊Ȃǂˁv
w VC ̂ƂHx
uGۃGfB^[Ƃˁv
ŵ炢ł悤ɂȂɂ͂ǂ̂炢Hx
uv
wցHx
uƂ킯Ŏv
 Version 9.16 ̉c 
wɂÂIx
uÃx̃GfB^͕ʂɂ͍Ȃccv
wccˁA͐󂿂𒴂邱Ƃ͂łȂ̂ˁx
uccނǌԂȂccv


////////////////////////////////////////////////////////////////////
/*                QOOQNPOVij̍XV                */
http://www.kab-studio.com/

EX\ǎI
@PA\ǎłB܂SRǂGɂ邩߂ĂȂ
ǁccB


////////////////////////////////////////////////////////////////////
/*                          ӁII                            */

Ẽ[ԐMȂłB
EӌE]Ez[`[ʂȓL]肨肭B
http://www.kab-studio.com/nikki2/
EwǓo^Ƃɂ͂̃y[WōsȂĂB
http://www.mag2.com/m/0000012198.htm
http://www.pubzine.com/detail.asp?id=000590
E͎ōsȂĂB
EobNio[͂̃y[Wɂ܂B
http://backno.mag2.com/reader/Back?id=0000012198
http://www.kab-studio.com/Freeware/index.html#MailMagazine


////////////////////////////////////////////////////////////////////
/*
    KAB-studio.h
      Weekly Mail Magazine.
      Written by Kaburaya Seiden.
      http://www.kab-studio.com/Info/MailMagazine/

    (C)KAB-studio 1999 - 2002 ALL RIGHTS RESERVED.
        http://www.kab-studio.com/
        info@kab-studio.com
*/
////////////////////////////////////////////////////////////////////

