//--------------------------------------------------------------------------- // clipboard related functions //--------------------------------------------------------------------------- bool TVPClipboardHasFormat(tTVPClipboardFormat format) { switch(format) { case cbfText: return Clipboard()->HasFormat(CF_TEXT) || Clipboard()->HasFormat(CF_UNICODETEXT); // ANSI text or UNICODE text default: return false; } }
void Ide::IdePaste(String& data) { data.Clear(); if(AcceptFiles(Clipboard())) { Vector<String> s = GetFiles(Clipboard()); for(int i = 0; i < s.GetCount(); i++) if(FileExists(s[i]) && IsTextFile(s[i], 10000)) { int64 len = GetFileLength(s[i]); if(len > 5000000 || data.GetLength() + len < 5000000) data.Cat(LoadFile(s[i])); } } }
void __fastcall TForm1::Timer2Timer(TObject *Sender) { capGrabFrame(hWndC); bool capOK=capEditCopy(hWndC); // копируем кадр в буфер обмена if (capOK) { TClipboard *pCB=Clipboard(); // буфер обмена windows Graphics::TBitmap *Buffer=new Graphics::TBitmap; // сюда писать кадр будем DBImage1->Picture->LoadFromClipboardFormat(CF_BITMAP,pCB->GetAsHandle(CF_BITMAP),0); } }
void __fastcall TMDIChild::actCopyFastViewExecute(TObject *Sender) { int index = lvFastView->ItemIndex; if(index < 0) return; Clipboard()->AsText = lvFastView->Selected->SubItems->Strings[0]; }
//--------------------------------------------------------------------------- void __fastcall TToolsForm::ComboBox2Change(TObject *Sender) { if (ComboBox2->ItemIndex >= 0) { TClipboardViewFormat v = ClipboardFormatToView(Clipboard()->Formats[ (int)ComboBox2->Items->Objects[ComboBox2->ItemIndex]]); ClipboardViewer1->ViewFormat = v; } }
/* ======================================================================================================================= ======================================================================================================================= */ void __fastcall TFormR::CopiarClick(TObject *Sender) { // FormR->Image1->Picture->Bitmap=FormR->Image1->Picture->Bitmap; FormR->Image1->Picture->Bitmap->Width = tamanioCircuito.x; FormR->Image1->Picture->Bitmap->Height = tamanioCircuito.y; Clipboard()->Assign(FormR->Image1->Picture->Bitmap); }
//--------------------------------------------------------------------------- void __fastcall TUserListForm::CopyAllPopupClick(TObject *Sender) { AnsiString buf; int i; for(i=0;i<ListView->Items->Count;i++) buf += ListItemString(ListView->Items->Item[i]); Clipboard()->SetTextBuf(buf.c_str()); }
//--------------------------------------------------------------------------- void TDrawing::Paste() { if (!Clipboard()->HasFormat(CF_TEXT)){ return; } AnsiString S = Clipboard()->AsText; if (S.SubString(1, 8) != "Drawing:") { return; } ClearSelection(); TDrawing *Source = new TDrawing(S.SubString(9, S.Length())); int existingnum = Count; for (int i = 0 ; i < Source->Count ; i++) { TDrawingItem *Item = Source->DItem(i); //座標更新 bool found = true; while (found){//同じ座標のオブジェクトがある間ループ found = false; for (int i2 = 0 ; i2 < existingnum ; i2++) { TDrawingItem *Item2 = DItem(i2); bool same = true; for (int i3 = 0 ; i3 < 4 && same ; i3++) { same &= fabs(Item->m_Rect[i3] - Item2->m_Rect[i3]) < 0.001f; } if (same) { for (int i3 = 0 ; i3 < 4 ; i3++) { Item->m_Rect[i3] += 1.0f / 32; } found = true; break; } } } Add(new TDrawingItem(*Item)); m_bModified = true; m_bDrawRequest = true; } delete Source; }
void __fastcall TFwCalcMainDlg::Paste1Click(TObject *Sender) { AnsiString value = Clipboard()->AsText; char *p = value.c_str(); while(*p) { m_engine->ProcessChar(*p); p++; } }
//--------------------------------------------------------------------------- void __fastcall TFormGrepStringsDialog::CopyString1Click(TObject *Sender) { // Copiar el los renglones seleccionados - Solo el String. TStringList *List = new TStringList(); if (List) { CreateStringListFormSelectRows(List, defSTRING); Clipboard()->AsText=List->Text; delete List; } }
void __fastcall TMDIChild::actCopyAsHexStrExecute(TObject *Sender) { String hexStr = m_HexEditor->SelectionAsHex; for(int i=2; i<hexStr.Length(); i+=2) { hexStr.Insert(" ", i+1); i++; } Clipboard()->AsText = hexStr; }
//--------------------------------------------------------------------------- void __fastcall TToolsForm::ComboBox1Change(TObject *Sender) { switch (ComboBox1->ItemIndex) { case 0: { Clipboard()->AsText = RxDemoMainForm->Caption; break; } case 1: { Clipboard()->Assign(Image5->Picture); break; } case 2: { CopyIconToClipboard(Application->Icon, clWindow); break; } case 3: { Clipboard()->SetComponent(Button1); } } }
//--------------------------------------------------------------------------- void __fastcall TToolsForm::ClipboardViewer1Change(TObject *Sender) { AnsiString s; ComboBox2->Items->Clear(); ComboBox2->Items->AddObject("Auto", (TObject *)(-1)); for (int i = 0; i < Clipboard()->FormatCount; i++) { s = ClipboardViewer1->ClipboardFormatNames[i]; if (s != "") { ComboBox2->Items->AddObject(s, (TObject *)i); } } ComboBox2->ItemIndex = 0; }
void CInstrumentEditorVRC7::OnPaste() { // Copy from clipboard CClipboard Clipboard(this, CF_TEXT); if (!Clipboard.IsOpened()) { AfxMessageBox(IDS_CLIPBOARD_OPEN_ERROR); return; } if (Clipboard.IsDataAvailable()) { LPCTSTR text = (LPCTSTR)Clipboard.GetDataPointer(); if (text != NULL) PasteSettings(text); } }
void __fastcall TMainForm::Copytoclipboard2Click(TObject *Sender) { Graphics::TBitmap* bmp = new Graphics::TBitmap(); bmp->Width = 64; bmp->Height = 32; TRect rect; rect.left = 0; rect.top = 0; rect.bottom = 32; rect.right = 64; bmp->Canvas->Brush->Color = Panel2->Color; bmp->Canvas->FillRect(rect); Clipboard()->Assign(bmp); delete bmp; }
void __fastcall TMDIChild::actCopyAsListExecute(TObject *Sender) { char *pointer = m_HexEditor->GetFastPointer(0, m_HexEditor->DataSize); int selStart = m_HexEditor->SelStart; int selLength = m_HexEditor->SelCount; String arrayStr; for(int i=0; i<selLength; i++) { if(i != selLength - 1) arrayStr += FormatStr("0x%s, ", BinToStr(pointer + selStart + i, 1)); else arrayStr += FormatStr("0x%s", BinToStr(pointer + selStart + i, 1)); } String result = FormatStr("char arrayData[%d] = {\r\n\t%s};", selLength, arrayStr); Clipboard()->AsText = result; }
void CInstrumentEditorVRC7::OnCopy() { CString MML; int patch = m_pInstrument->GetPatch(); // Assemble a MML string for (int i = 0; i < 8; ++i) MML.AppendFormat(_T("$%02X "), (patch == 0) ? (unsigned char)(m_pInstrument->GetCustomReg(i)) : default_inst[patch * 16 + i]); CClipboard Clipboard(this, CF_TEXT); if (!Clipboard.IsOpened()) { AfxMessageBox(IDS_CLIPBOARD_OPEN_ERROR); return; } Clipboard.SetDataPointer(MML.GetBuffer(), MML.GetLength() + 1); }
void __fastcall TWOWFisherMain::miCopyFishResultClick(TObject *Sender) { auto_ptr<TStringList> copyStr(new TStringList); String str = "-"; String resultStr; for(int i=0; i<61; i++) { resultStr += str; } copyStr->Add(resultStr); for(int i=0; i<GetGameWorld()->GetDataByKey("fish_results")->GetChildCount(); i++) { shared_ptr<DataObject> curObj = GetGameWorld()->GetDataByKey("fish_results")->GetAt(i); DWORD itemID = curObj->GetKeyName().ToIntDef(0); AnsiString itemName = GetGameWorld()->GetItemNameByID(itemID); AnsiString cnt = curObj->AsString(); AnsiString percent = FormatStr("%s%%", curObj->GetDataObject("percent")->AsString()); AnsiString itemResult; itemResult.sprintf("*%-30s%-15s%-15s*", itemName.c_str(), cnt.c_str(), percent.c_str()); copyStr->Add(itemResult); } copyStr->Add(resultStr); Clipboard()->AsText = copyStr->Text; }
void __fastcall TFormLog::EditQRZChange(TObject *Sender) { if(EditQRZ->Text=="*") EditQRZ->Text=PendingCall; OtherCall = EditQRZ->Text; Clipboard()->SetTextBuf(OtherCall.c_str()); }
namespace Python { //--------------------------------------------------------------------------- struct TGlobalObjectEntry { const char *Name; TObject *Object; }; /** List of global VCL objects that should be permanently mapped in PyVcl.vcl */ TGlobalObjectEntry GlobalObjectList[] = { "Application", Application, "Mouse", Mouse, "Clipboard", Clipboard(), "Screen", Screen, }; //--------------------------------------------------------------------------- /** Retrieve a list of available variables, types and functions in PyVcl.vcl. * \return New reference */ static PyObject* GlobalVcl_Dir(TVclObject *self, PyObject *arg) { unsigned GlobalCount = sizeof(GlobalObjectList)/sizeof(GlobalObjectList[0]); unsigned GlobalFunctionCount = GetVclFunctionCount(); TStrings *TypeList = GetTypeList(); PyObject *List = PyList_New(TypeList->Count + GlobalCount + GlobalFunctionCount); int Index; for(Index = 0; Index < TypeList->Count; Index++) PyList_SET_ITEM(List, Index, ToPyObject(TypeList->Strings[Index])); for(unsigned I = 0; I < GlobalCount; I++, Index++) PyList_SET_ITEM(List, Index, ToPyObject(GlobalObjectList[I].Name)); for(unsigned I = 0; I < GlobalFunctionCount; I++, Index++) PyList_SET_ITEM(List, Index, ToPyObject(GetVclFunctionName(I))); return List; } //--------------------------------------------------------------------------- /** Retrieve a type, function or global variable from the global vcl object. * The name is searched in this ordier: * 1. Check the cache if the object already exists and used it if it does. * Global variables as Application always exist here. * 2. Search for type in custom list of available types. * 3. Try to retrieve it as a registered class in Delphi. * 4. Try to create it as a global function. * At last the object is stored in the cache for fast retrievel next time. * A Python exception is thrown if no variable, type or function with the given name is found. * \return New reference */ static PyObject* GlobalVcl_GetAttro(PyObject *self, PyObject *attr_name) { try { PyObject *Result = PyObject_GenericGetAttr(self, attr_name); if(Result != NULL) return Result; PyErr_Clear(); String Name = PyUnicode_AsUnicode(attr_name); TRttiType *Type = Context.GetType(LookUpClass(Name)); if(Type == NULL) { TClass Class = GetClass(Name); if(Class) Type = Context.GetType(Class); } if(Type != NULL) { // if(Class->InheritsFrom(__classid(Exception))) Result = VclType_Create(Type); } else Result = VclFunction_Create(Name); if(Result == NULL) { SetErrorString(PyExc_AttributeError, "VCL has no global attribute '" + Name + "'"); return NULL; } PyObject_GenericSetAttr(self, attr_name, Result); return Result; } catch(...) { return PyVclHandleException(); } } //--------------------------------------------------------------------------- struct TGlobalVcl { PyObject_HEAD PyObject *Dict; }; //--------------------------------------------------------------------------- static PyMemberDef GlobalVcl_Members[] = { {"__dict__", T_OBJECT, offsetof(TGlobalVcl, Dict), READONLY}, {NULL, 0, 0, 0} }; //--------------------------------------------------------------------------- static PyMethodDef GlobalVcl_Methods[] = { {"__dir__", (PyCFunction)GlobalVcl_Dir, METH_NOARGS, ""}, {NULL, NULL, 0, NULL} }; //--------------------------------------------------------------------------- /** The vcl object exists because it is not possible to set tp_getattro for a module. * The object will be made available for direct import by "import vcl". * The object gives access to all VCL types and some global VCL variables and functions. */ static PyTypeObject GlobalVclType = { PyObject_HEAD_INIT(NULL) "vcl.Vcl", /* tp_name */ sizeof(TGlobalVcl), /* tp_basicsize */ 0, /* tp_itemsize */ 0, /* tp_dealloc */ 0, /* tp_print */ 0, /* tp_getattr */ 0, /* tp_setattr */ 0, /* tp_compare */ 0, /* tp_repr */ 0, /* tp_as_number */ 0, /* tp_as_sequence */ 0, /* tp_as_mapping */ 0, /* tp_hash */ 0, /* tp_call */ 0, /* tp_str */ GlobalVcl_GetAttro, /* tp_getattro */ PyObject_GenericSetAttr, /* tp_setattro */ 0, /* tp_as_buffer */ Py_TPFLAGS_DEFAULT, /* tp_flags */ "Global VCL types and methods", /* tp_doc */ 0, /* tp_traverse */ 0, /* tp_clear */ 0, /* tp_richcompare */ 0, /* tp_weaklistoffset */ 0, /* tp_iter */ 0, /* tp_iternext */ GlobalVcl_Methods, /* tp_methods */ GlobalVcl_Members, /* tp_members */ 0, /* tp_getset */ 0, /* tp_base */ 0, /* tp_dict */ 0, /* tp_descr_get */ 0, /* tp_descr_set */ offsetof(TGlobalVcl, Dict),/* tp_dictoffset */ 0, /* tp_init */ 0, /* tp_alloc */ 0, /* tp_new */ }; //--------------------------------------------------------------------------- static PyModuleDef PyVclModuleDef = { PyModuleDef_HEAD_INIT, "PyVcl", //m_name "Module wrapping the Visual Component Library (VCL)", //m_doc -1, //m_size NULL, //m_methods NULL, //m_reload NULL, //m_traverse NULL, //m_clear NULL, //m_free }; //--------------------------------------------------------------------------- /** This creates the vcl object in the PyVcl module. * \return New reference */ PyObject* GlobalVcl_Create() { TGlobalVcl *vcl = PyObject_New(TGlobalVcl, &GlobalVclType); vcl->Dict = NULL; PyObject *self = reinterpret_cast<PyObject*>(vcl); for(unsigned I = 0; I < sizeof(GlobalObjectList)/sizeof(GlobalObjectList[0]); I++) { PyObject *NewObject = VclObject_Create(GlobalObjectList[I].Object, false); PyObject_SetAttrString(self, GlobalObjectList[I].Name, NewObject); Py_DECREF(NewObject); } return self; } //--------------------------------------------------------------------------- /** Initialize the vcl module. This creates all types need by PyVcl and the vcl object, * which is placed in the list of imported modules. * This way you can write "import vcl" instead of "from PyVcl import vcl". */ PyObject* InitPyVcl() { PyObject *PyVclModule = PyModule_Create(&PyVclModuleDef); if(PyType_Ready(&GlobalVclType) < 0 || PyType_Ready(&VclMethodType) < 0 || PyType_Ready(&VclObjectType) < 0 || PyType_Ready(&VclFunctionType) < 0 || PyType_Ready(&VclArrayPropertyType) < 0 || PyType_Ready(&VclRefType) < 0) return NULL; PyVclException = PyErr_NewException("vcl.VclError", NULL, NULL); PyModule_AddObject(PyVclModule, "VclError", PyVclException); PyObject *vcl = GlobalVcl_Create(); PyModule_AddObject(PyVclModule, "vcl", vcl); PyObject *Modules = PyImport_GetModuleDict(); PyDict_SetItemString(Modules, "vcl", vcl); Py_DECREF(vcl); return PyVclModule; } //--------------------------------------------------------------------------- } //Namespace Python
void __fastcall TScreenSnapper::WndProc(TMessage &Msg) { // User placed something on the clipboard if (Msg.Msg==WM_DRAWCLIPBOARD) { TClipboard *Clip=Clipboard(); if (Clip->HasFormat(CF_BITMAP)) { // Clipboard has a bitmap, process it // Start processing, sound camera shutter click if (Main->SoundsCheck->Checked) PlaySound("Shutter",HInstance,SND_RESOURCE|SND_ASYNC); // Ensure folder exists if (!Main->EnsureSnapsFolder()) return; Clipboard()->Open(); HBITMAP Hb=(HBITMAP)Clip->GetAsHandle(CF_BITMAP); if (Hb) { // UI Main->IntroMemo->Visible=false; Main->NameLab->Visible=true; Main->AllSheetShownBefore=false; Graphics::TBitmap *Bm=new Graphics::TBitmap(); Bm->Handle=Hb; // Crop if necessary Main->Crop(Bm,Main->MonitorCombo->ItemIndex); // 'The Parameter is incorrect, OutOfResources exception /* Old crop code, didn't work very well for multi-monitor if (Main->CropCheck->Checked) { int LimitWidth=StrToIntDef(Main->CropWidthEdit->Text,0); int LimitHeight=StrToIntDef(Main->CropHeightEdit->Text,0); if (LimitWidth>0 && LimitHeight>0) { if (LimitWidth<Bm->Width) Bm->Width=LimitWidth; if (LimitHeight<Bm->Height) Bm->Height=LimitHeight; } } */ // Convert to editable format Bm->PixelFormat=pf24bit; AnsiString FontOverlayName="Arial"; int FontSizeOverlay=24; TColor FontShadowColor=clBlack; TColor FontColor=TColor(RGB(255,192,0)); // Overlay (fixed text at top) AnsiString S=Main->OverlayEdit->Text.Trim(); if (S!="") { TCanvas *Can=Bm->Canvas; Can->Font->Name=FontOverlayName; Can->Font->Size=FontSizeOverlay; SetBkMode(Can->Handle,TRANSPARENT); // Shadow Can->Font->Color=FontShadowColor; Can->TextOut(16,16,S); // Text itself Can->Font->Color=FontColor; Can->TextOut(14,14,S); } // Find a free serial nr for (;;) { AnsiString Format=IncludeTrailingBackslash(Main->FolderEdit->Text)+Main->PrefixEdit->Text+"-"+JapanDatum()+"-%03d.jpg"; Savename.printf(Format.c_str(),Nr++); if (!FileExists(Savename)) break; } // Save full size if (!Main->SaveHalfSizeCheck->Checked) { SaveToJpgFile(Bm,Savename,Main->JpgQualityBar->Position); /* Orig code TJPEGImage *Jpg=new TJPEGImage; Jpg->CompressionQuality=Main->JpgQualityBar->Position; Jpg->Assign(Bm); Jpg->SaveToFile(Savename); delete Jpg; */ } // Shrink bitmap for display purposes Graphics::TBitmap *Half=new Graphics::TBitmap(); Graphics::TBitmap *Quart=new Graphics::TBitmap(); AntiAlias(Bm,Half,false); // Save half size if (Main->SaveHalfSizeCheck->Checked) { SaveToJpgFile(Half,Savename,Main->JpgQualityBar->Position); /* Orig code TJPEGImage *Jpg=new TJPEGImage; Jpg->CompressionQuality=Main->JpgQualityBar->Position; Jpg->Assign(Half); Jpg->SaveToFile(Savename); delete Jpg; */ } AntiAlias(Half,Quart,false); Main->Img->Picture->Bitmap->Assign(Quart); Main->NameLab->Caption="Last saved: "+Savename; delete Half; delete Quart; delete Bm; // Done processing, sound camera transport if (Main->SoundsCheck->Checked) PlaySound("Transport",HInstance,SND_RESOURCE|SND_ASYNC); } Clipboard()->Close(); } SendMessage(NextHandle,WM_DRAWCLIPBOARD,0,0); } // Standard response to clipboard chain management if (Msg.Msg==WM_CHANGECBCHAIN) { if ((HWND)Msg.WParam==NextHandle) NextHandle=(HWND)Msg.LParam; else SendMessage(NextHandle,WM_CHANGECBCHAIN,Msg.WParam,Msg.LParam); } TForm::WndProc(Msg); }
//--------------------------------------------------------------------------- void __fastcall TStopConsumeExportThread::Execute() { //---- Place thread code here ---- ValidEXBTN->Enabled = false; ValidPreBTN->Enabled = false; ValidEBTN->Enabled = false; Variant ExcelApp; try { ExcelApp = CreateOleObject("Excel.Application"); } catch(...) { MessageBox(StopConsumeShowFRM->Handle, "错误:您的系统中可能没有安装Excel!", "Error in launch Excel!", MB_OK|MB_ICONERROR); ValidEXBTN->Enabled = true; ValidPreBTN->Enabled = true; ValidEBTN->Enabled = true; return; } ValidQuery->Open(); String DTX = ""; String path = GlobalPath; String Templatepath; ValidQuery->First(); int allrecord = ValidQuery->RecordCount; for(int i = 0; i <65531; i++) { DTX += ValidQuery->FieldByName("KH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("BH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("XM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("SF_YE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("XB")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("BM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("BZ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("ZB")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("ZW")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("ZT")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("RQ")->AsAnsiString.Trim(); DTX += "\n"; Validprogress->Position = i*100/allrecord; ValidQuery->Next(); if(ValidQuery->Eof) break; } Templatepath = path + "\\ExportXLSTemplate\\STTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); Variant WB = ExcelApp.OlePropertyGet("ActiveWorkBook"); Variant ST = WB.OlePropertyGet("Sheets", 1); //设置报头信息 String tmpoutstr = ""; ST.OlePropertyGet("Cells",2,2).OlePropertySet("Value", Validcheckstr.t_str()); ST.OlePropertyGet("Cells",2,8).OlePropertySet("Value", ValidCZYstr.t_str()); Variant RE = ST.OlePropertyGet("Range", "A5").OleFunction("Select"); Clipboard()->Clear(); Clipboard()->SetTextBuf(DTX.c_str()); ST.OleFunction("Paste"); Clipboard()->Clear(); ExcelApp.OlePropertyGet("Columns").OleFunction("AutoFit"); WB.OleFunction("SaveAs", Validsavepath.t_str()); ExcelApp.OleFunction("Quit"); ExcelApp = Unassigned; Validprogress->Position = 100; MessageBox(StopConsumeShowFRM->Handle, "数据已完成导出!", "Successfully!", MB_OK|MB_ICONINFORMATION); ValidEXBTN->Enabled = true; ValidPreBTN->Enabled = true; ValidEBTN->Enabled = true; }
/************************************************************************* Constructor *************************************************************************/ System::System(Renderer& renderer, ResourceProvider* resourceProvider, XMLParser* xmlParser, ImageCodec* imageCodec, ScriptModule* scriptModule, const String& configFile, const String& logFile) : d_renderer(&renderer), d_resourceProvider(resourceProvider), d_ourResourceProvider(false), d_clipboard(CEGUI_NEW_AO Clipboard()), d_scriptModule(scriptModule), d_xmlParser(xmlParser), d_ourXmlParser(false), d_parserModule(0), d_imageCodec(imageCodec), d_ourImageCodec(false), d_imageCodecModule(0), d_ourLogger(Logger::getSingletonPtr() == 0), d_customRenderedStringParser(0) { // Start out by fixing the numeric locale to C (we depend on this behaviour) // consider a UVector2 as a property {{0.5,0},{0.5,0}} could become {{0,5,0},{0,5,0}} setlocale(LC_NUMERIC, "C"); // Instantiate logger first (we have no file at this point, but entries will // be cached until we do) // // NOTE: If the user already created a logger prior to calling this // constructor, we mark it as so and leave the logger untouched. This allows // the user to fully customize the logger as he sees fit without fear of // seeing its configuration overwritten by this. #ifdef CEGUI_HAS_DEFAULT_LOGGER if (d_ourLogger) CEGUI_NEW_AO DefaultLogger(); #endif Logger& logger(Logger::getSingleton()); // create default resource provider, unless one was already provided if (!d_resourceProvider) { d_resourceProvider = CEGUI_NEW_AO DefaultResourceProvider(); d_ourResourceProvider = true; } // handle initialisation and setup of the XML parser setupXMLParser(); // now XML is available, read the configuration file (if any) Config_xmlHandler config; if (!configFile.empty()) { CEGUI_TRY { d_xmlParser->parseXMLFile(config, configFile, config.CEGUIConfigSchemaName, ""); } CEGUI_CATCH(...) { // cleanup XML stuff d_xmlParser->cleanup(); CEGUI_DELETE_AO d_xmlParser; CEGUI_RETHROW; }
void TCustomStringGrid::CopyStringToCB(AnsiString astring) { TClipboard * CB = Clipboard (); CB->SetTextBuf(astring.c_str()); }
//--------------------------------------------------------------------------- void TDrawing::Copy() { Clipboard()->SetTextBuf((AnsiString("Drawing:") + Encode()).c_str()); }
//--------------------------------------------------------------------------- void __fastcall TCZMXExportThread::Execute() { //---- Place thread code here ---- ValidEXBTN->Enabled = false; ValidPreBTN->Enabled = false; ValidEBTN->Enabled = false; Variant ExcelApp; try { ExcelApp = CreateOleObject("Excel.Application"); } catch(...) { MessageBox(CZMXShowFrm->Handle, "错误:您的系统中可能没有安装Excel!", "Error in launch Excel!", MB_OK|MB_ICONERROR); ValidEXBTN->Enabled = true; ValidPreBTN->Enabled = true; ValidEBTN->Enabled = true; return; } ValidQuery->Open(); String DTX = ""; String path = GlobalPath; String Templatepath; ValidQuery->First(); int allrecord = ValidQuery->RecordCount; for(int i = 0; i <65531; i++) { DTX += ValidQuery->FieldByName("kh")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("bh")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("NAME")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("BUMEN")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("BANBIE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("ZUBIE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("ckje")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("sf_ye")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("sycs")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("sflx")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("jyno")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("CZY")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("pkey")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidQuery->FieldByName("sfrq")->AsAnsiString.Trim(); DTX += "\n"; Validprogress->Position = i*100/allrecord; ValidQuery->Next(); if(ValidQuery->Eof) break; } Templatepath = path + "\\ExportXLSTemplate\\CZMXTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); Variant WB = ExcelApp.OlePropertyGet("ActiveWorkBook"); Variant ST = WB.OlePropertyGet("Sheets", 1); //设置报头信息 String tmpoutstr = ""; ST.OlePropertyGet("Cells",2,2).OlePropertySet("Value", ValidKHstr.t_str()); ST.OlePropertyGet("Cells",2,4).OlePropertySet("Value", ValidBHstr.t_str()); ST.OlePropertyGet("Cells",2,6).OlePropertySet("Value", ValidBBstr.t_str()); ST.OlePropertyGet("Cells",2,8).OlePropertySet("Value", ValidCZCZYstr.t_str()); tmpoutstr = "¥" + ValidAllCKstr; ST.OlePropertyGet("Cells",2,10).OlePropertySet("Value", tmpoutstr.t_str()); ST.OlePropertyGet("Cells",2,12).OlePropertySet("Value", ValidCZYstr.t_str()); ST.OlePropertyGet("Cells",2,14).OlePropertySet("Value", ValidBeginDatestr.t_str()); ST.OlePropertyGet("Cells",3,2).OlePropertySet("Value", ValidBMstr.t_str()); if(ValidDKQCZtag) ST.OlePropertyGet("Cells",3,4).OlePropertySet("Value", "Y"); else ST.OlePropertyGet("Cells",3,4).OlePropertySet("Value", "N"); ST.OlePropertyGet("Cells",3,6).OlePropertySet("Value", ValidZBstr.t_str()); if(ValidPOSCZtag) ST.OlePropertyGet("Cells",3,8).OlePropertySet("Value", "Y"); else ST.OlePropertyGet("Cells",3,8).OlePropertySet("Value", "N"); if(ValidFKCZtag) ST.OlePropertyGet("Cells",3,10).OlePropertySet("Value", "Y"); else ST.OlePropertyGet("Cells",3,10).OlePropertySet("Value", "N"); ST.OlePropertyGet("Cells",3,12).OlePropertySet("Value", DateTimeToStr(Now()).t_str()); ST.OlePropertyGet("Cells",3,14).OlePropertySet("Value", ValidEndDatestr.t_str()); Variant RE = ST.OlePropertyGet("Range", "A7").OleFunction("Select"); Clipboard()->Clear(); Clipboard()->SetTextBuf(DTX.c_str()); ST.OleFunction("Paste"); Clipboard()->Clear(); ExcelApp.OlePropertyGet("Columns").OleFunction("AutoFit"); WB.OleFunction("SaveAs", Validsavepath.t_str()); ExcelApp.OleFunction("Quit"); ExcelApp = Unassigned; Validprogress->Position = 100; MessageBox(CZMXShowFrm->Handle, "数据已完成导出!", "Successfully!", MB_OK|MB_ICONINFORMATION); ValidEXBTN->Enabled = true; ValidPreBTN->Enabled = true; ValidEBTN->Enabled = true; }
//--------------------------------------------------------------------------- void __fastcall TBTMXExportThread::Execute() { //---- Place thread code here ---- ValidExportBTN->Enabled = false; ValidPreviewBTN->Enabled = false; Variant ExcelApp; try { ExcelApp = CreateOleObject("Excel.Application"); } catch(...) { MessageBox(SDIAppForm->Handle, "错误:您的系统中可能没有安装Excel!", "Error in launch Excel!", MB_OK|MB_ICONERROR); ValidExportBTN->Enabled = true; ValidPreviewBTN->Enabled = true; return; } String DTX = ""; // ValidADOQuery->Open(); ValidADOQuery->First(); int allcount = ValidADOQuery->RecordCount; int currentcount = 0; Validprogress->Position = 0; while(!ValidADOQuery->Eof) { Validprogress->Position = currentcount*100/allcount; currentcount++; DTX += ValidADOQuery->FieldByName("BH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidADOQuery->FieldByName("KH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidADOQuery->FieldByName("SF_YE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidADOQuery->FieldByName("SFJE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidADOQuery->FieldByName("SYCS")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidADOQuery->FieldByName("SFRQ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidADOQuery->FieldByName("JYNO")->AsAnsiString.Trim(); DTX += "\t"; // DTX += ValidADOQuery->FieldByName("GZZID")->AsAnsiString; // DTX += "\t"; DTX += ValidADOQuery->FieldByName("SFLX")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidADOQuery->FieldByName("CZY")->AsAnsiString.Trim(); DTX += "\t"; DTX += ValidADOQuery->FieldByName("SCRQ")->AsAnsiString.Trim(); DTX += "\n"; ValidADOQuery->Next(); } String TempPath = GlobalPath; TempPath += "\\ExportTemplate\\BTMXTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", TempPath.t_str()); Variant WB = ExcelApp.OlePropertyGet("ActiveWorkBook"); Variant ST = WB.OlePropertyGet("Sheets", 1); ST.OlePropertyGet("Cells",2,2).OlePropertySet("Value", ValidBeginTimeStr.t_str()); ST.OlePropertyGet("Cells",2,7).OlePropertySet("Value", ValidEndTimeStr.t_str()); ST.OlePropertyGet("Cells",3,2).OlePropertySet("Value", ValidKHStr.t_str()); ST.OlePropertyGet("Cells",3,7).OlePropertySet("Value", ValidBHStr.t_str()); ST.OlePropertyGet("Cells",4,2).OlePropertySet("Value", ValidJHStr.t_str()); ST.OlePropertyGet("Cells",4,7).OlePropertySet("Value", ValidDDStr.t_str()); Variant RE = ST.OlePropertyGet("Range", "A7").OleFunction("Select"); Clipboard()->Clear(); Clipboard()->SetTextBuf(DTX.c_str()); ST.OleFunction("Paste"); Clipboard()->Clear(); ExcelApp.OlePropertyGet("Columns").OleFunction("AutoFit"); WB.OleFunction("SaveAs", Validfilename.t_str()); ExcelApp.OleFunction("Quit"); ExcelApp = Unassigned; ValidADOQuery->Close(); Validprogress->Position = 100; ValidExportBTN->Enabled = true; ValidPreviewBTN->Enabled = true; MessageBox(SDIAppForm->Handle, "数据导出完毕!", "Successfully!", MB_OK|MB_ICONINFORMATION); }
void __fastcall TFormLog::EditQTHDblClick(TObject *Sender) { char buf[20]; Clipboard()->GetTextBuf(buf,20); EditQTH->Text = EditQTH->Text + AnsiString(buf); }
//--------------------------------------------------------------------------- void __fastcall TFormLog::ButtonLogClick(TObject *Sender) { if(EditQRZ->Text=="") return; int H; AnsiString LogName = ThePath + "\\stream.adi"; if(FileExists(LogName)) { H = FileOpen(LogName,fmOpenReadWrite); if(H<0) { Application->MessageBox("Cannot write to log","IZ8BLY PSK31 Lab",MB_OK | MB_ICONSTOP); return; } FileSeek(H,0,2); } else { H = FileCreate(LogName); if(H<0) { Application->MessageBox("Cannot write to log","IZ8BLY PSK31 Lab",MB_OK | MB_ICONSTOP); return; } FileWriteString(H,"Created by IZ8BLY PSK31 Lab\r\n<EOH>\r\n"); } AnsiString Linea; TDateTime TD; if(UTCTimeLog) { SYSTEMTIME SystemTime; GetSystemTime(&SystemTime); TD = SystemTimeToDateTime(SystemTime); } else { TD = TDateTime().CurrentDateTime(); } Linea = FormatAdif("CALL",EditQRZ->Text) + FormatAdif("NAME",EditName->Text)+ FormatAdif("QTH",EditQTH->Text)+ FormatAdif("RST_RCVD",EditRSTReceived->Text)+ FormatAdif("RST_SENT",EditRSTSent->Text)+ FormatAdif("FREQ",EditFrequency->Text)+ FormatAdif("MODE","STREAM")+ FormatAdif("QSO_DATE",TD.FormatString("yyyymmdd"))+ FormatAdif("TIME_ON",TD.FormatString("hhmm"))+ FormatAdif("COMMENT",EditComments->Text)+ "<EOR>\r\n"; FileWriteString(H,Linea); FileClose(H); char oldclip[2048]; Clipboard()->GetTextBuf(oldclip,2048); Clipboard()->SetTextBuf(Linea.c_str()); SendMessage(HWND_BROADCAST,IZ8BLY,0,0); Clipboard()->SetTextBuf(oldclip); ButtonLog->Enabled = false; }
void __fastcall TExportToXlsThread::Execute() { //---- Place thread code here ---- ExitBTN->Enabled = false; ExportQuery->Open(); Variant ExcelApp; try { ExcelApp = CreateOleObject("Excel.Application"); } catch(...) { MessageBox(SDIAppForm->Handle, "错误:您的系统中可能没有安装Excel!", "Error in launch Excel!", MB_OK|MB_ICONERROR); ExportQuery->Close(); ExportBTN->Enabled = false; ExitBTN->Enabled = true; return; } if(!ExportQuery->IsEmpty()) { // MessageBox(this->Handle, DTX.t_str(), "Data", MB_OK); 有这行就会变成乱码,真奇怪! String DTX = ""; String path = GlobalPath; String Templatepath; //部门信息导出 if("Section" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("DM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BUMEN")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\SectionTemplate.xlt"; // MessageBox(SDIAppForm->Handle, Templatepath.t_str(), "out", MB_OK); ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //班级信息导出 if("Class" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("DM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BUMEN")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BANBIE")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\ClassTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //组别信息导出 if("Group" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("DM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BUMEN")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BANBIE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("ZUBIE")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\GroupTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //卡片信息导出 if("Card" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("BH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("KH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BKH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("XM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("XB")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFZH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BZ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("ZB")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("ZW")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("JB")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("RQ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("TKRQ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("YJ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("TYJ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("ZT")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GRMM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SF_YE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFYEDT")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SYCS")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("FKSK")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SF_FL")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GLF")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("FKJE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("TKJE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SF_KL")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("USERNAME")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("PKEY")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\CardTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //存取款信息导出 if("CK" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("bh")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("kh")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("sf_ye")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("sf_fl")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("ckxj")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("glf")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("ckje")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("sycs")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("sfrq")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("jyno")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("gzzid")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("sflx")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("CZY")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("pkey")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\CKTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //挂失信息导出 if("GS" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("BH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("KH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GSRQ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("USERNAME")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\GSTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //费率信息导出 if("FL" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("DM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("FL")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\SFFLTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //Pos参数信息导出 if("POSPARAM" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("JH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("STID")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("STNAME")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GZZID")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GZZMC")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("CONNECT")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFJPORT")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("MAXXF")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("PASSWORD")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFJLX")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("JX")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("MAXZZZE")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\PosParTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //工作站信息导出 if("Station" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("GZZID")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GZZMC")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SY")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\StationTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //食堂信息导出 if("ST" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("STID")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("STNAME")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\STNameTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //系统设置信息导出 if("XTSET" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("SYSID")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("INITDATE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("INIT")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("ICTYPE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("FKYJ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("TKYJ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("DWMC")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("DWMM")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("MAXKH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BFPATH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("BFRQ")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\SysSetTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //系统用户信息导出 if("SYSUSER" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("USERID")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("USERNAME")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("PASSWORD")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GROUPID")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GROUPNAME")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\SysUserTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //消费明细信息导出 if("MX" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("BH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("KH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SF_YE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFJE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SYCS")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFRQ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("JYNO")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GZZID")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFLX")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("CZY")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SCRQ")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\MXTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //错误信息导出 if("ERRDATA" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("BH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("KH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SF_YE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFJE")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SYCS")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFRQ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("JYNO")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("GZZID")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SFLX")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("ERRMSG")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("SCRQ")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("PKEY")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportTemplate\\ERRDATATemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //级别补贴信息导出 if("BTJB" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("BH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("KH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("Bonus")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("CreateDate")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("UserName")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("DownDate")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportXLSTemplate\\BTJBTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } //消费次数补贴信息导出 if("BTCS" == TableName) { ExportQuery->First(); int allrecord = ExportQuery->RecordCount; for(int i = 0; i < 65530; i++) { DTX += ExportQuery->FieldByName("BH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("KH")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("Bonus")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("ZW")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("CreateDate")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("February")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("March")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("April")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("May")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("June")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("July")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("August")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("September")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("October")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("November")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("December")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("UserName")->AsAnsiString.Trim(); DTX += "\t"; DTX += ExportQuery->FieldByName("DownDate")->AsAnsiString.Trim(); DTX += "\n"; ExportProgress->Position = i*100/allrecord; ExportQuery->Next(); if(ExportQuery->Eof) break; } Templatepath = path + "\\ExportXLSTemplate\\BTCSTemplate.xlt"; ExcelApp.OlePropertyGet("workbooks").OleFunction("Open", Templatepath.t_str()); } Variant WB = ExcelApp.OlePropertyGet("ActiveWorkBook"); Variant ST = WB.OlePropertyGet("Sheets", 1); Variant RE = ST.OlePropertyGet("Range", "A2").OleFunction("Select"); Clipboard()->Clear(); Clipboard()->SetTextBuf(DTX.c_str()); ST.OleFunction("Paste"); Clipboard()->Clear(); ExcelApp.OlePropertyGet("Columns").OleFunction("AutoFit"); WB.OleFunction("SaveAs", ExportFileName.t_str()); ExcelApp.OleFunction("Quit"); ExcelApp = Unassigned; ExportQuery->Close(); ExportProgress->Position = 100; MessageBox(SDIAppForm->Handle, "数据已完成导出!", "Successfully!", MB_OK|MB_ICONINFORMATION); ExportProgress->Position = 0; ExportBTN->Enabled = false; ExitBTN->Enabled = true; return; } else { MessageBox(SDIAppForm->Handle, "错误:没有符合查询条件的资料!", "Error in Query!", MB_OK|MB_ICONERROR); ExcelApp.OleFunction("Quit"); ExcelApp = Unassigned; ExportQuery->Close(); ExportBTN->Enabled = false; ExitBTN->Enabled = true; return; } }