亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++Builder代碼片斷

2019-09-06 23:33:51
字體:
供稿:網(wǎng)友

                    本文中包含了一些常用的代碼片斷,看看想想或許有他山之石可以攻玉的可能。

刪除別名中所有的表、純虛函數(shù)、虛函數(shù)、啟動頁面、指針、為指針解除引用、表的For循環(huán)
變量與常量的聲明、檢查表是否存在、組件的類名、剪貼板中的文字、字符流、檢查表是否已打開
表的狀態(tài)操作、改變PageControl的標(biāo)簽、向Query傳遞參數(shù) 日期屬性 繪制狀態(tài)條

刪除別名中所有的表
void TData::CleanTemp()
{
 TStringList *myTables = new TStringList();
 TTable *Table = new TTable(this);
 try
 {
   Session->GetTableNames("Temp", "", True, False, myTables);
 }
 catch (...) {}
 // AnsiString str = myTables->GetText();
 // ShowMessage(str);
 for(int count=0; count < myTables->Count; count++)
 {
   Table->DatabaseName = "Temp";
   Table->TableName = myTables->Strings[count];
   Table->Close();
   Table->DeleteTable();
 }
 delete myTables;
 delete Table;
}

純虛函數(shù)
//純虛函數(shù)只在基類中出現(xiàn),而在子類中必須有
//與其匹配的成員函數(shù)。程序中申明的子類的實例
//必須為基類中的每一個純虛函數(shù)提供一個重載的成員函數(shù)。
class TBaseClass
{
 public:
 virtual void Display() = 0;
};
class TDerivedClass : public TBaseClass
{
 public:
 void Display() { ShowMessage("From Derived"); }
};
 
class TSecondDerivedClass : public TDerivedClass
{
 public:
 void Display() { ShowMessage("From Second Derived"); }
};
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 TDerivedClass dc; dc.Display();// "From Derived"
 TSecondDerivedClass sc; TBaseClass* bc = ≻
 bc->Display(); // "From Second Derived"
}

虛函數(shù)
//虛函數(shù)作為其他類的父類的成員函數(shù)。
//如果繼承子類成員函數(shù)中存在與父類成員函數(shù)完全相同的函數(shù),
//子類中的成員函數(shù)永遠(yuǎn)有效。
class Base
{
public:
 virtual void Display() { ShowMessage("Base Class"); }
};
 
class DerivedOne : public Base
{
 public:
 void Display() { ShowMessage("DerivedOne"); }
};
 
class DerivedTwo : public Base
{
 public:
 void Display() { ShowMessage("DerivedTwo"); }
};
 
Base* pBases[10];
int count = 0;
DerivedOne aDerOne;
DerivedTwo aDerTwo;
pBases[count++] = &aDerOne;
pBases[count++] = &aDerTwo;
for( int i=0; i < count; i++ )
pBases->Display();


啟動頁面
USEDATAMODULE("Datamod.cpp", DataModule);
USEFORM("about.cpp", AboutBox);
USEFORM("main.cpp", MainForm);
USEFORM("splash.cpp", SplashForm);
//---------------------------------------------------------------------------
#include "splash.h"
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
 try
 {
   SplashForm = new TSplashForm(Application);
   SplashForm->Show();
   SplashForm->Update();
   Application->Initialize();
   Application->Title = "Example of Loading Splash Form";
   Application->HelpFile = "SplashHelp.hlp";
   Application->CreateForm(__classid(TMainForm), &MainForm);
   Application->CreateForm(__classid(TDataModule), &DataModule);
   Application->CreateForm(__classid(TAboutBox), &AboutBox);
   SplashForm->Hide();
   SplashForm->Close();
   Application->Run();
 }
 catch (Exception &exception)
 {
   Application->ShowException(&exception);
 }
 return 0;
}


指針
int array[] = { 2, 4, 6, 8, 10}
int myInteger = array[3]; // 值為 8
 
// ----使用指針可以實現(xiàn)同樣的功能 -----
int array[] = { 2, 4, 6, 8, 10}
int* myPtr = array;
int myInteger = myPtr[3]; // 值為8


為指針解除引用
int x = 32;
int* ptr = &x;
//解除指針的引用
//以獲得內(nèi)存位置的內(nèi)容
int y = *ptr; // y = 32


表的For循環(huán)
void TDataModuleEmployee::ListNames( TStrings *Items )
{
 try
 {
   for ( TableAll->First(); !TableAll->Eof; TableAll->Next() )
   if ( TableAll->FieldByName("Deleted")->AsBoolean == false )
   Items->AddObject( TableAll->FieldByName("Name")->AsString, (TObject *)TableAll->FieldByName("Refnum")->AsInteger );
 }
 catch (Exception &e)
 {
   Application->ShowException(&e);
 };
}


變量與常量的聲明
char ch;
int count = 1;
char* name = "csdn.net";
struct complex { float my, his;};
float real(complex* p) {return p->my};
const double pi = 3.1415926535897932385;
templetate abc(T a) { return a < 0 ? -a : a; };
enum WebSite { one, two, three, four};
int* a; // * 指針
char* p[20]; // [ ] 數(shù)組
void myFunction(int); // ( )函數(shù)
struct str { short length; char* p; };
char ch1 = 'a';
char* p = &ch1; // &引用 ,p保持著ch1的地址
char ch2 = *p; // ch2 = 'a'


檢查表是否存在
#include "io.h"
if (access(Table1->TableName.c_str(),0)) //檢查表是否存在
{ // 若不存在就創(chuàng)建 ...
 Table1->Active = false;
 Table1->TableType = ttParadox;
 Table1->FieldDefs->Clear();
 Table1->FieldDefs->Add("Myfield", ftString, 15, false);
 Table1->IndexDefs->Clear();
 Table1->CreateTable();
 Table1->Active = true;
}
else
 Table1->Active = true;


組件的類名
//找出丟失的組件類名
for(int i=0; i < ComponentCount; i++)
{
 if(String(dynamic_cast<TComponent&>(*Components).Name) == "")
 {
   ShowMessage(Components->ClassName());
 }
}


剪貼板中的文字
#include "memory.h" // 包含 auto_ptr<>
#include "clipbrd.hpp" //包含 TClipboard & Clipboard()
// 范例程序,包含了一個memo控件
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{ //創(chuàng)建 TStringList對象
 auto_ptr ClipText(new TStringList); //得到剪貼板中的文字的拷貝
 ClipText->Text = Clipboard()->AsText; //然后加工一下...
 Memo1->Lines->AddStrings(ClipText.get());
}


字符流
//范例一
#include "sstream"
const char *name = "cker";
const char *email = "cker@sina.com";
// 生成 "cker"[SMTP:cker@sina.com]
 
ostringstream ost;
ost << """ << name << ""[SMTP:" << email << "]";
Edit1->Text = ost.str().c_str();
 
//范例二
void TDataModuleEmployee::FullReport(const char *title)
{
 Report.header(title);
 Report << sformat( "Employee #%2d: %s%s", TableAllRefnum->Value, TableAllName->Text.c_str(),
 TableAllManagerFlag->Value ?"(Manager)" : "" ) << " Address: " <<
 TableAllAddress->Text.c_str() << endl << " " << TableAllCityProvZip->Text.c_str() <<
 endl << " " << NameCountry(TableAllCanada->Value) << endl;
 Report.footer();
}


檢查表是否已打開
void TData::CheckEdit()
{
 for(int i=0; i < ComponentCount; i++)
 {
   if(dynamic_cast(Components))
   {
     if(((TTable*)Components)->State == dsEdit)
     {
/tString s = "Table " + Components->Name + " is in edit mode" "Would you like to post it before entering new task?";
/tif(MessageBox(NULL,s.c_str(),"Table in Edit Mode",MB_YESNO | MB_ICONINFORMATION) == IDYES)
/t  ((TTable*)Components)->Post();
/telse
/t  ((TTable*)Components)->Cancel();
     }
   }
 }
}


表的狀態(tài)操作
//關(guān)閉已打開的表并將他們恢復(fù)成初始狀態(tài)。
void TData::MyTables(TForm * sender)
{
 int i;
 TTable * Table;
 bool *active = new bool[MyClass->ComponentCount];//在動態(tài)數(shù)組中存放每個表的初始狀態(tài),然后關(guān)閉所有的表
 for(i = 0; i < MyClass->ComponentCount; i++)
 {
   try
   {
     if((Table = dynamic_cast(MyClass->Components)) != NULL)
     {
/tactive = Table->Active;
/tTable->Active = false;
     }
   }
   catch(...) {}; //異常應(yīng)該只來自于dynamic cast...
 }
 for(i = 0; i < MyClass->ComponentCount; i++)
 {
   try
   {
     if((Table = dynamic_cast(MyClass->Components)) != NULL)
     {
/tif(Table->DatabaseName != OPTARDatabase->DatabaseName)
/t  continue;
/tDBIResult result = DBIERR_NONE + 1;
/twhile(result != DBIERR_NONE) //若希望的話,這樣允許用戶重試!
/t{
/t  result = DbiPackTable (OPTARDatabase->Handle,NULL,Table->TableName.c_str(),NULL, true);
/t  if(result != DBIERR_NONE)
/t  {
/t    AnsiString rsltText = "Unable to pack " + Table->TableName + "." ;
/t    char rslt[DBIMAXMSGLEN + 1];
/t    DbiGetErrorString(result, rslt) rsltText += ". Try again?";
/t    if(Application->MessageBox(rsltText.c_str(), "Error!",MB_YESNO) != IDYES)
/t      break;
/t  }
/t}
     }
   }
   catch (...) {}; //異常應(yīng)該只來自于dynamic cast...
 }
 // 將所有的表設(shè)回初始狀態(tài)。
 for(i = 0; i < MyClass->ComponentCount; i++)
 {
   try
   {
     if((Table = dynamic_cast(MyClass->Components)) != NULL)
/tTable->Active = active;
   }
   catch(...) {};
 }
 delete []active;
}


改變PageControl的標(biāo)簽
void __fastcall TfmMainForm::Cancel1Click(TObject *Sender)
{
 int i;
 switch (PageControl1->ActivePage->Tag))
 {
   case 1:
     for (i=0; i < ComponentCount; i++)
     {
/tif (dynamic_cast(Components))
/t  dynamic_cast(Components)->Enabled = false;
     }
     Data->tbDetail->Cancel();
     break;
   case 2:
     for (i=0; i < ComponentCount; i++)
     {
/tif (dynamic_cast(Components))
/t  dynamic_cast(Components)->Enabled = false;
     }
     Data->tbDetail->Cancel();
     break;
   case 3:
     for (i=0; i < ComponentCount; i++)
     {
/tif (dynamic_cast(Components))
/t  dynamic_cast(Components)->Text = "";
     }
   default:
     break;
 }
}


向Query傳遞參數(shù)
// 直接從表向Query傳遞參數(shù)的一種方法
TQuery *Query = new TQuery(this);
Query->DatabaseName = "dbServer";
Query->SQL->Clear();
Query->SQL->Add("DELETE FROM 'Events.DB' WHERE (TicketNo = " + Data->tbProblem->FieldByName("TicketNo")->AsString + ")" );
Query->ExecSQL();
Query->Close();
delete Query;


日期屬性
TMaskEdit *meOpen;
TLabel *lbCount1;
TDateTime Date2;
void __fastcall TfmMainForm::CountOpen(TObject *Sender)
{
 switch(dynamic_cast<TComponent&>(*Sender).Tag)
 {
   case 1:
     count1 = StrToInt(lbCount1->Caption);
     count1 += 1;
     Date2 = Now() + count1;
     meOpen->Text = Date2.DateString();
     lbCount1->Caption = IntToStr(count1);
     break;
  case 2:
    count1 = StrToInt(lbCount1->Caption);
    count1 -= 1;
    Date2 = Now() + count1;
    meOpen->Text = Date2.DateString();
    lbCount1->Caption = IntToStr(count1);
    break;
 }
}


繪制狀態(tài)條
void __fastcall TForm1::StatusBar1DrawPanel(TStatusBar *StatusBar, TStatusPanel *Panel, const TRect &Rect)
{
 TCanvas& c = *StatusBar->Canvas;
 switch (Panel->Index)
 {
   case 0 :
   {
     StatusBar1->Panels->Items[0]->Text = "Hello C++";
     c.Brush->Style = bsClear;
     TRect temp = Rect;
     temp.Top += 1;
     temp.Left += 1;
     c.Font->Color = clWhite;
     DrawText(c.Handle,Panel->Text.c_str(),-1,(RECT*)&temp,DT_SINGLELINE|DT_CENTER);
     c.Font->Color = clBlack;
     DrawText(c.Handle,Panel->Text.c_str(),-1,(RECT*)&Rect,DT_SINGLELINE|DT_CENTER);
     break;
   }
   case 1:
   {
     c.Brush->Color = clYellow;
     c.FillRect(Rect);
     c.Font->Color = clRed;
     DrawText(c.Handle,"clYellow Color", -1, (RECT*)&Rect, DT_SINGLELINE | DT_CENTER);
     break;
   }
   case 2:
   {
     Graphics::TBitmap* bm = new Graphics::TBitmap;
     bm->Handle = LoadBitmap(NULL, MAKEINTRESOURCE(32760));
     c.Draw(Rect.Left, Rect.Top, bm);
     delete bm;
     break;
   }
 }
}
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

色视频在线免费| 国产精品欧美三级在线观看| 精品国产一区二区三区香蕉沈先生| 亚洲毛片一区二区三区| 求av网址在线观看| 国产美女在线播放| 久久成人国产| 亚洲一区二区国产| 精品日韩在线播放| 精品人妻一区二区三区浪潮在线| 日韩电影免费观| 中文字幕在线视频网站| 亚洲视频狠狠干| 123区在线| 久热99视频在线观看| 亚洲精选在线视频| 亚洲不卡一区二区三区| 欧洲另类一二三四区| 国产成人77亚洲精品www| 国产精品第一页在线| 久久精品道一区二区三区| 亚洲精品v欧美精品v日韩精品| 色88888久久久久久影院| 国内精品视频一区二区三区| 欧美性高跟鞋xxxxhd| 亚洲国产成人porn| 91精品国产一区二区在线观看| 午夜影院观看视频免费| 日韩免费福利电影在线观看| 国产久一道中文一区| 日韩国产亚洲欧美| 亚洲精品自拍视频在线观看| 欧美一区免费观看| 日本一区二区三区在线免费观看| 中文字幕第五页| 98视频在线噜噜噜国产| aa免费在线观看| 欧美视频第二页| 精品国产欧美一区二区| 成人精品一区二区| 国产中文精品久高清在线不| xxxxwwww欧美| 欧美精品在线观看一区二区| 色综合av综合无码综合网站| 免费在线观看av片| 黄色在线免费| 欧美精品免费观看二区| 制服师生第一页| 久久夜精品va视频免费观看| 中文字幕在线观看视频网站| 欧美高清无遮挡| 国产在线精品观看| 日本在线免费观看| 美女在线视频免费| 777午夜精品福利在线观看| 嫩草黄色影院| 少妇高清精品毛片在线视频| 黄页网址大全免费观看| 一区二区日本伦理| av资源网在线播放| 日本中文字幕在线视频观看| 天堂网中文在线| 国产精品日韩成人| 极品粉嫩小仙女高潮喷水久久| 亚欧精品在线视频| 国产在线观看福利| 69视频在线观看免费| 色偷偷亚洲女人天堂观看欧| 国产在线观看欧美| 97成人在线观看| 国产一区二区三区欧美| 99国产精品私拍| www.日本三级| 国产免费黄网站| 久久精品日产第一区二区三区乱码| 美女少妇全过程你懂的久久| 久久精品亚洲欧美日韩精品中文字幕| 18被视频免费观看视频| 中国xxx69视频| 日韩aaa久久蜜桃av| 亚洲欧洲国产精品久久| 黄色污污视频软件| 欧美97人人模人人爽人人喊视频| 2014亚洲片线观看视频免费| 五月天中文字幕| 国产精品麻豆免费版| 99视频只有精品| 日韩a一级欧美一级| 欧美精品一区二区久久婷婷| 亚洲警察之高压线| 九九视频免费看| 亚洲国产你懂的| 久草中文视频| 香蕉视频久久久| 国产精品网站在线| 综合精品久久久| 国产亲伦免费视频播放| 久久精品国产99久久99久久久| 免费一级特黄特色毛片久久看| 国产欧美韩日| 欧美欧美欧美欧美首页| 亚洲激情婷婷| 国产精品一区二区亚洲| 真人做人试看60分钟免费| 国产精品一区二区久久精品爱涩| 波多野在线观看| 在线观看久久av| 国产素人视频在线观看| 精品一区二区三区在线| 中文在线一二区| 亚洲精品123区| 国产特级aaaaaa大片| 米奇777在线欧美播放| 国产精品视频黄色| 国产精品福利无圣光在线一区| 欧美乱妇一区二区三区不卡视频| 欧美色18zzzzxxxxx| 欧美**vk| 成人三级高清视频在线看| av大片在线观看| 精品乱码一区二区三四区视频| 日本h片在线看| 国产精品免费无遮挡| 欧美性视频网站| av电影在线观看一区| 国产欧美在线观看一区| 免费人成在线观看播放视频| 久久中文字幕av一区二区不卡| 第四色在线视频| 亚洲成年网站在线观看| 超碰cao国产精品一区二区| 中文字幕在线视频区| 熟妇无码乱子成人精品| 怡红院在线播放| 欧美精品性生活| 99视频一区二区| 亚洲午夜色婷婷在线| 免费观看的黄色网址| 国产在线精品免费av| 欧美国产精品中文字幕| 久久久久久国产精品三级玉女聊斋| 亚洲日本免费| 成人免费视频在线观看| 亚洲精品影视在线| 天天久久综合| 欧美男同视频网| 国产精品地址| 色爱精品视频一区| 午夜视频在线| 911久久香蕉国产线看观看| 五月婷婷欧美激情| 五月婷婷一区二区三区| 手机毛片在线观看| 在线视频毛片| 国产成人77亚洲精品www| 羞羞视频在线观看不卡| 日韩欧美中文一区| 7777久久香蕉成人影院| 亚洲精品666| 92看片淫黄大片一级| 欧美一区二区三区视频| 福利精品一区| 国产又粗又猛又黄视频| 国产精品91视频| 亚洲精品自拍网| 在线免费看视频| 亚洲电影免费观看高清| 欧美黑粗硬大| 久久综合久色欧美综合狠狠| 精品丝袜一区二区三区| 免费精品一区二区三区在线观看| 国产日韩精品久久| 欧美日韩调教| 精品www久久久久奶水| 亚洲综合色自拍一区| 日韩三级视频在线看| 少妇人妻一区二区| 亚洲卡一卡二| 欧美日韩国产欧美日美国产精品| 高清国产一区二区三区| 久久综合色之久久综合| 天天做天天摸天天爽国产一区| 精品亚洲一区二区三区| 91免费视频网址| 91av精品| 日韩免费小视频| 51色欧美片视频在线观看| 99久久99久久免费精品蜜臀| yes4444视频在线观看| 特级西西www444人体聚色| 亚洲欧美日韩国产一区二区| 婷婷中文字幕一区| 男男激情在线| 视频一区不卡| 亚洲第一大网站| 欧美图片欧美激情欧美精品| 亚洲综合色婷婷| 精品无码久久久久国产| 国模视频一区二区| 岛国精品资源网站| 午夜精品偷拍| 手机在线理论电影| 国产欧美 在线欧美| 久久91亚洲精品中文字幕奶水| 久久野战av| 无码aⅴ精品一区二区三区浪潮| 蜜臀av免费在线观看| 亚洲欧洲精品成人久久奇米网| 丝袜美腿av在线| 欧美最大成人综合网| 国产精品一卡二卡| 伊人久久成人| 亚洲人精品午夜在线观看| 精品福利在线视频| 欧美被日视频| 欧美三日本三级少妇99| 欧美videos另类齐全| 麻豆tv免费在线观看| 99精产国品一二三产品香蕉| 日韩中文字幕不卡视频| 精品欧美一区二区久久久久| 91精产国品一二三产区别沈先生| 久久99精品久久久久久| 日本韩国欧美三级| 国产精品影视天天线| 日本一二区免费| 成人午夜福利视频| 日韩国产激情| 欧美激情一区二区三区高清视频| 欧美成人午夜视频| 无码人妻丰满熟妇区五十路百度| 免费精品视频| 欧美丝袜美女中出在线| 黄色一级片国产| 国产一区二区三区在线观看| 高清日韩一区| 亲子乱一区二区三区电影| 亚洲成人av一区二区| 久久亚洲国产精品尤物| 国产精品理人伦一区二区三区| 精品卡1卡2卡三卡免费网站| 成人国产精品| 在线影视一区二区三区| 国一区二区在线观看| 中文字幕在线看| 国产色综合久久| 欧美日韩中文字幕在线播放| 91精品国产aⅴ一区二区| 久久在线免费视频| jizzjizz视频| 伊人久久综合影院| 狠狠干天天爱| 久久久久久久极品| ww亚洲ww在线观看国产| www.天堂在线观看| 99精品视频在线观看免费播放| 久久www人成免费看片中文| 国产区av在线| 在线播放 亚洲| 亚洲欧洲日韩一区二区三区| 精品人妻互换一区二区三区| 国产精品10p综合二区| 国产精品久久久久久免费| 日韩精品黄色| 成人福利在线视频| 亚洲欧美黄色片| 九九热在线免费观看| av岛国在线| h小视频在线观看网| av在线看网址| 在线观看完整版免费| 韩国理伦片一区二区三区在线播放| 午夜精品久久久久久99热| 97涩在线观看视频| 日本特黄特色aaa大片免费| 少妇久久久久久被弄高潮| 国产第一区电影| 国模吧精品人体gogo| 欧美视频一区二区在线| 伊人久久大香线蕉综合热线| 欧美成人精品一区二区男人小说| 久久av无码精品人妻系列试探| 亚洲成人18| 国产精品无码天天爽视频| 久久蜜桃香蕉精品一区二区三区| 青檬在线电视剧在线观看| 欧美中文字幕在线视频| 天堂av免费在线观看| 亚洲精品国产精| 男人天堂网在线视频| 首页欧美精品中文字幕| 亚洲成人av影片| 国产中文字幕精品| 国产精品欧美久久久久无广告| 99香蕉国产精品偷在线观看| av在线免费观看网站| 日本视频在线观看一区二区三区| 99精品在线免费观看| 精品国产日韩欧美| 蜜臀av一区二区三区有限公司| 91超碰免费在线| 国产91porn| 国产成人精品999在线观看| 在线看黄的网站| 97中文在线观看| 91色porny在线视频| 免费看日产一区二区三区| 精品调教chinesegay| 蜜桃传媒视频麻豆第一区免费观看| 五月六月丁香婷婷| 视频一区免费观看| a天堂在线视频| 国产97色在线| 玖玖精品在线| 日韩精品中文字幕在线一区| 国产午夜精品视频免费不卡69堂| 日韩精品在线免费观看| julia京香一区二区三区| 一区二区三区在线播放| 人妻激情偷乱视频一区二区三区| 色妞一区二区三区| 国产视频自拍一区| 欧美黑人xxx| 91在线观看免费视频| 国产理论视频在线观看| av片在线免费看| 国产精品欧美日韩| www红色一片_亚洲成a人片在线观看_|