unit1.cpp

来自「本书《C++Builder与WindowsAPI经典范例》附含配套光盘包括132」· C++ 代码 · 共 43 行

CPP
43
字号
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::WMCommand(TMessage &Msg)
{
if ((HWND)Msg.LParam == DriveComboBox1->Handle
           && HIWORD(Msg.WParam) == CBN_CLOSEUP)
    {
    // if drive "A:" is selected
    if (DriveComboBox1->ItemIndex == 0)
        {
        DWORD dwData;
        AnsiString text = DriveComboBox1->Items->Strings[0];
        int OldErrorMode = ::SetErrorMode(SEM_FAILCRITICALERRORS);
        bool HasDisk = ::GetDiskFreeSpace(text.c_str(), &dwData,
                                          &dwData,
                                          &dwData, &dwData);
        SetErrorMode(OldErrorMode);
        if (!HasDisk)
            {
            ShowMessage("你的A盘没有磁盘。");
            DriveComboBox1->ItemIndex = 1;
            }
        }
    }
TForm::Dispatch(&Msg);
}
//---------------------------------------------------------------------------


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?