< February 2006 | March 2006 | June 2006 >

March 8, 2006

CTabCtrl のページいっぱいいっぱいに CListBox を貼り付ける

要するに、CTabCtrl::AdjustRect () の使い方です。引数の fLarger に FALSE を渡すと、タブページの領域の矩形を取得することができます。別に CListBox でなくてもよかったのですが、例では CListBox をタブに貼り付けます。

SDK の場合は SendMessage で、TCM_ADJUSTRECT をタブコントロールに送出する方法に読み替えます。TabCtrl_AdjustRect というマクロも用意されています。

class CMyTabDialog
    : public CDialog
{
private:
    CTabCtrl    m_Tab;          // タブです
    CListBox    m_ListBox;      // タブの上にはっつけるリストボックスです

BOOL CMyTabDialog::OnInitDialog (void)
{
    CRect Rect;
    
    m_Tab.GetWindowRect (Rect);         // タブのウインドウ矩形
    m_Tab.AdjustRect (FALSE, Rect);     // タブのページいっぱいいっぱいの領域の矩形を導出
    ScreenToClient (Rect);              // これをダイアログのクライアント座標に変換して
    m_ListBox.MoveWindow (Rect);        // リストボックスを移動します
    
    return TRUE;
}

March 6, 2006

Windows Xp Professional で、NTP サーバを構成する

Windows Xp は、信頼できる時刻ソースと定期的に同期を行うと、同時に、自動的に NTP サーバとして動作させることができます。

最後に行った時刻同期が失敗している、または、最後に行った時刻同期より、一定以上経過している場合、クライアントからの時刻同期の要求は失敗します。

とにかく2台のマシンの時刻を同期する必要があり、一方が WinXp の場合、それをNTP サーバとして使うことができます。

続きを読む...

Windows 2000 Professional で、SNTP クライアントを構成する

Windows 2000 Professional は、SNTP クライアントの機能があります。 ただし、どうやらデフォルトでは起動していないようです。

続きを読む...