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

    KAB-studio.h


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

    MF 2001/11/05(Mon) No.131
    zMF 3780 ( Mag2 + Pubzine )
    sF ܂܂ ( URL: http://www.mag2.com/  ID: 0000012198 )
    sF Pubzine ( URL: http://www.pubzine.com/  ID: 590 )
*/
////////////////////////////////////////////////////////////////////

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

E\ǎPPo[WɁB
@PA\ǎPPo[Wɂ܂BC[ẂAH̒A
Δ͉ẑB͂̃ZhƈႤŁA\VN
Ɋ邩B_E[h CG Gallery ɂāB
[CG Gallery]
http://www.kab-studio.com/CG/Gallery/


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

2001/10/28 (Sun)
@CȂĂ̂тBȂƂՂƂQb炢B߂Č
OOX͔BăXNvgBς DHTML ݂ȁH

2001/10/29 (Mon)
@ЂłccB܂vO~OȂH@
AĂ͂PP\ǎBقڊijBς̊Gđ
B

2001/10/30 (Tue)
@PP\ǎI@{͂h肽BȐFŁA^
ubgłBGIɂ͂ςZh肪H@d͍
ȂccB Windows2000 炵ÃR\[v
OB

2001/10/31 (Wed)
@BȂłȂɖ̂B~XB`x[V͌
\̂ɁB AirH" ǂȂĂȁH

2001/11/01 (Thu)
@ɁAѓ̃vO쐬BȂ̂ɂPԔ
āccBߌ̓\pbNcBTbJ[{\̔g˂Đl
ĂccǒmȂijB

2001/11/02 (Fri)
@d͂ƏBAĂ͂̂тB BREGEXP Ă̂
B VC Œu@\tK\ł`BAj̓@h
bh 3DCG ɂقڂBčZH@͑vB

2001/11/03 (Sat)
@̂т`BJrz[g}gBk@͑ς炸[B֐
ك[h ATOK ɊґI@łccB


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

@́@Nӂ@|PP|

@𑖂蔲gbNBʂɂȂłȂAʂ̃gbNB
@ӊOƂԂɃAVCςł񂶂ȂƎv͂
ĂAۂɂƊmM邱Ƃ́A܂܂ȂB
@ÃgbNɂ́AƃAVCς܂ĂB
@gbN̏ȂŁAN͗ɂď΂݂ƂȂAĂ
̊DFǂ𒭂߂ĂB̘eŁA^]͂łÂ𑕂
^]ĂB
@ŃA^]̕ւƌB
uNccv
@̎~܂Ԃɓuԉ^]̓EĴAN͎v킸
oȂقǂꂵɌĂB
uccꂮÂ͋NȂłBȂƂɂȂA{
ɑςȂƂɂȂAccv
@̋󔒂̊Ԃ́A^]͍l]TB炵ׂȁI@
S̒ŋłB
uccNɎłȂ΂ȂȂ낤ˁv
@̌tɁAN͖{Ɏ̂NɂȂBƈuԂ
XB̊px͂قǂł͂ȂĂA^]͂܂ɓ|ꂻȒ
B
@܂̏Ԃɖ߂AolƂol˂ƁẢב䂩`e
ȂꂽB
uccv
@̌t̓r؂́AN̓{肪点ABۂɉ^]
͂̊킯ł͂ȂA̍ł̎󂯂Ă΁A
ʌĊ킹̂ł͂ȂB
@AS͍Â͎AŃnh͊A܂
邱Ƃłt̏󋵂ŁA悻͂ł̂ł͂ȂB
uŕȂĂƂɂȂccv
@^]ɂ́A܂AƎv]T͂ȂB
uRg[āAԂƐHׂꂿႤȂv
uAHׂIHv
@v킸^]͂グBgbN̐ςׂ݉̂Ƃ
mĂAƂƂmĂAꂪǂ̂悤Ȑ
͒mȂAᔽɂȂ铮炢ɂlĂȂ
B
@ȂƂȂɂAׂɍN̋|Ƃ܂œ
炳ȂB
uAĂǂȂ̂Ȃ񂷂Hv
@^]́A|𕴂킷ƂĂNɌ肩B
uNccv
úA͂ЂHv
@̐͗ԂĂB̂Ƃ̐N̒ق́A܂łňԒ
^]͊ĂB
ucc߂ĘbĂꂽˁv
uIH@͂ccv
@zƂ͂΂񂩂ꂽɁA^]͔qB
uȂ񂾁AƂĂAˁBłAōĂ̂̒ł͈
ȁHv
uĂāAȂłHv
uӂӁH@ccqɏƌ\ׂɂȂ񂾂ˁANv
@Ăѕオ|A^]̐𕕈󂵂ĂB
                                                              ()


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
wx̐j Java }K̓Hx
u݂B^CǵqpƃX[p[ƃTuƁrv
wkHx
uccȂƃRĝccv
wCA߂BŁAp͒mĂ邯ǁx
uႠΔˁBX[p[NX͐eNXv
wĂƂ̓TuNXqNXƂɁHx
u䂱Ɓv
wcc̃}KAǂޕKvȂx
ułȂBȂŃX[p[eNXƎvH@@\Iɂ́v
wmɋtˁBTuNX̕X[p[NXł邱Ƒx
uĂƂĂ̂Ax̐jɏo鍆̓ev
włāAvO~OɊ֌ẂHx
u񂾁Aꂪv
http://www.kab-studio.com/Programing/JavaOOP/
_______________________________________________________________[KCM]


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


@Version 7.11
NbsOł͂ݏoȂI

ufoCXReLXg̘bB܂͂ꂩv

void CAnimeDlg::OnBDraw() 
{
    HDC hCanvasDC = ::GetDC( m_cCanvasStatic.GetSafeHwnd() );
    HBRUSH hBrush = CreateSolidBrush( RGB( 0, 0, 255 ) );

    RECT stRect;
    ::GetClientRect( m_cCanvasStatic.GetSafeHwnd(), &stRect );
    // cɂQ{B
    stRect.bottom *= 2;

    ::FillRect( hCanvasDC, &stRect, hBrush );

    ::DeleteObject( hBrush );
}

wA IDC_S_CANVAS ͂ݏoIx
u͂ݏo悤ɂ킴ƏcɂQ{Ă邩ˁv
w܂AWEBhE̊OɎĂA`悵
Ă킯ˁx
uAvP[V̒łǂˁB̂悤ɁAfoCXReLX
g͏ɂ́q͂ݏoȂ悤ӂrĂƂ܂v
w܂A`悷ƂɎł͂ݏoȂǂ`FbNĂ
ˁx
uA킯ȂāAq`Ă͈̂͂̔͂rĂ
ƂfoCXReLXgɎwłłv
wAg΋Cɂł񂾁x
u䂱ƁBŁAg߂ɕKvȂ̂ŁA܂g
Ă݂܂傤v
wĂƂ͍͉邱Ƃ\̂ˁccx
u䂱ƁB܂́y[Wzv
w[Hx
u[W͉p region Aq̈rĈӖBfoCXReLXg
q̈ň͂ށrɎǵv
wAŁq`͈́r͂߂΂킯x
u䂱ƁBƁȂOɃ[WgĂ݂܂v

void CAnimeDlg::OnBDraw() 
{
    HDC hCanvasDC = ::GetDC( m_cCanvasStatic.GetSafeHwnd() );
    HBRUSH hBrush = CreateSolidBrush( RGB( 0, 0, 255 ) );

    // [W܂B
    HRGN hRgn;
    hRgn = ::CreateRoundRectRgn( 0, 0, 50, 50, 30, 30 );
    // [Wň͂񂾕hׂ܂B
    ::FillRgn( hCanvasDC, hRgn, hBrush );

    ::DeleteObject( hBrush );
    // [W폜܂B
    ::DeleteObject( hRgn );
}

wAȂ񂩖ʎ肳ꂽlpox
u܂ CreateRoundRectRgn() ŁAʎlp̗̈܂B
ō̂͗̈悾ˁv
w܂AŐhׂĂƂ͂łĂĂ
ƁHx
uA̐Ă킯B[W͘gB
ጩȂǁA̕AȎɎg܂v
wƂ킯 FillRgn() œhׂĂ킯ˁx
u FillRect() ƓA[Wň͂܂ꂽ͈͂hׂ 
API v
wŁAŌɍ폜ƁB܂ł̉pĊx
u{Iȃ[͓ˁBŁAŏdvȂ̂́A[W͕
GȐ}`\ĂƁv
w΁A̖ʎlpČ\Gˁx
uł傤BɁAƕGȂ̂ł邩Ag
ŕGȐ}`̓hԂƂł킯v
wI@Č\֗x
u܁A̕Af[^̊Ǘʓ|ǂˁv
wmɁAGȐ}`Ďg̖ʓ|ccx
u܁A͂GȂ̂̓pXB[WĂAGȗ̈
͂ސĂƂƂāv
wÄĂƂ́Aƈ͂łȂƃ_H@rŐr؂
Ƃx
uĂ̂̓[WɂȂ܂B[W͕KĂȂƎg
Ȃˁv
wmɁAhԂƂłȂˁx
uł͍̖{v
w͂ݏoȂ@ˁ[x
u{Iɂ͍̂ƓBhׂ͈͂[Wň͂ŁAhׂ
Bł͎ۂɂĂ݂܂傤v

void CAnimeDlg::OnBDraw() 
{
    HDC hCanvasDC = ::GetDC( m_cCanvasStatic.GetSafeHwnd() );
    HBRUSH hBrush = CreateSolidBrush( RGB( 0, 0, 255 ) );

    RECT stRect;
    ::GetClientRect( m_cCanvasStatic.GetSafeHwnd(), &stRect );

    // [W܂B
    HRGN hRgn = ::CreateRectRgnIndirect( &stRect );
    // ̃[WŃNbsO܂B
    ::SelectClipRgn( hCanvasDC, hRgn );

    // hԂ͏cɂQ{B
    stRect.bottom *= 2;
    // hׂB
    ::FillRect( hCanvasDC, &stRect, hBrush );

    ::DeleteObject( hBrush );
    ::DeleteObject( hRgn );
}

wAccƁAŏQs͓hƂ̃foCXReLXgāA
uVĂƁB̎ɓhƂ͈̔͂ĂĂƁx
u[W͈͂̔͂ɂ΂킯v
wꂪ CreateRectRgnIndirect()  API ňꔭłłႤ킯ˁB
͕֗x
uŁAŎĝ SelectClipRgn()  API BgƁAfoC
XReLXgɃ[W邱Ƃłłv
w܂uVƂ̂ƓˁBH@łꂾ
SelectObject() Ȃ́Hx
u SelectObject() łvB SelectObject() ̃t@
XĂ݂āv
w CreateRectRgnIndirect() ō[Wvď
Ăˁx
uł SelectClipRgn() łB̃[WAyƂƂȂ񂩈
łv
w΁Â߂ǂւȂˁx
uB[W̓yȂ񂩂̑ GDI ƈāAfoCXReL
Xg̂̓IWĩRs[Ȃłv
wRs[Hx
uA SelectClipRgn() A CreateRectRgnIndirect() ̃Rs[
Ă foCXReLXgłv
wœւȂHx
uւÔ͕KǂōĂ͂ˁBɁAfoC
XReLXg͍ŏA[WĂȂԂv
wŏɎĂ̂ĂAĕKvȂ킯ˁx
u̕ӂ̓[W̓ʂȂƂ납ȁBŁAƂ͂܂łƓv
w킴Ƃ͂ݏo悤ɓhׂĂAƁA܂sĂȂB
sI@AƂ͂ݏoĂȂI IDC_S_CANVAS MM҂܂œh
ĂIx
uƂ̓uVƃ[W̍폜v
wˁ[x
úA͂ݏoȂ̈邱ƂyNbsOzČ܂v
w҂񂮁Hx
uNbsO͉p clipping A؂ĔóA؂蔲
ƂӖ܂v
w΃~[WbNNbvƂˁx
ûӂgݍ킹āyNbsO[WzČ̂
IȁBNbsŐ@\̂̂͑ OS Ƃɂ邩v
wƕ֗ˁ[BɂĂAӂɊȒPɂłႤ
ƂȂ񂩎RȊx
uƃNbsOĂĊmFȂv

    HRGN hRgn = ::CreateRectRgnIndirect( &stRect );

uv

    HRGN hRgn
        = ::CreateRoundRectRgn
        ( stRect.left, stRect.top
        , stRect.right, stRect.bottom
        , 50, 50 );

wApۂ߃o[Wx
uɂ΁Apۂ܂邩v
wNbsOĂ̂ˁBꂾŁA͂ݏoSz͂
킯ˁ[x
uȒPłHv
w[AmɂЂƂЂƂ͊ȒPȂ񂾂ǁccx
uBvO~Õ|Cg͂ˁBЂƂЂƂ͊ȒPBŁA
邱Ƃ؁v
wǂ䂱ƁHx
u͂hׂ CAnimeDlg::OnBDraw() ̒ł
ǁAƕGȂƂ邱ƂɂȂƁv
wȃo֐ŐFXHx
uӂɂȂĂƁÂႲႵĂāAЂƂ
ЂƂ͊ȒPłv
wݍĕGɂȂႤx
u͉Δ񂪌ƂƂŁÃvO\Gȕ
Ȃ񂾂ˁv
wρAȂ̂Ă邩Hx
uAfoCXReLXg擾āAypӂāA[W
āAĂ؂ɂĂ邩ˁv
wH@łooɂ炲ႲɂȂႤāA
󂿂񌾂Ȃx
uAKxɃooɂAĂA̕@ł܂Ƃ߂
dvȁB̂ւ͂܂xˁ`v

/*
    Preview Next Story!
*/
wA͒Zx
uQOOsČ\ςccv
wI[o[邱Ƃˁx
uȂ񂩂AƂȂI[o[邩v
wQɕ킯ˁx
uƂ킯Ŏv
 Version 7.12 I 
wɂÂIx
uZ񂪂ĂƂ́AS̓Iɂ͑邱ƂɂȂ邩v
wȂ΂肾ccx


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

EXVȂ̗\B
@Ԃ񉽂iVB̏TɁAzbgn[uXVł炢ȁ[B


////////////////////////////////////////////////////////////////////
/*                          Ӂ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 - 2001 ALL RIGHTS RESERVED.
        http://www.kab-studio.com/
        info@kab-studio.com
*/
////////////////////////////////////////////////////////////////////
