Ir para conteúdo
Fórum Script Brasil

vms

Membros
  • Total de itens

    306
  • Registro em

  • Última visita

Tudo que vms postou

  1. que vacilada, essa gabiarra não funciona corretamente pra o que eu quero. o usuario consegue entrar pelo atalho no desktop (direito do mouse\localizar destino..) voltei ao inicio, alguém pode me ajudar?
  2. já encontrei no google, valeu k!ko var janela : HWND; begin janela := findwindow(nil,'C:\Arquivos de programas'); postmessage(janela,WM_close,0,0);
  3. eu uso o xp, mas não era bem assim que eu queria queria fazer um programa que podesse bloquear e desbloquear com um Checkbox por exemplo o que vem na minha mente agora e o senguinte: o checkbox a aciona um timer e o timer fechará a janela "Arquivos de Programas" toda vez que alguém tentar abrir. é possivel fazer isso? Obs. para fechar todas as janelas aberta de uma vez eu sei fazer, mas eu so quero fechar uma ("Arquivos de Programas") valeu pela atenção
  4. ola pessoal exeiste alguma forma de bloquear a pasta "arquivos de programas", pra evitar que alguém delete algum programa
  5. encontrei essa função em um site japones que exporta dbgrid para excel, eu consigo compilar, mas não sei como usar, alguém pode dar uma ajuda ai. as messagens e comentarios estao assim porque não tenho fontes japonesas //--------------------------------------------------------------------------- #include "ComObj.hpp" #define PG OlePropertyGet #define PS OlePropertySet #define FN OleFunction #define PR OleProcedure //---------------------------- void DBGridToExcel(TDBGrid *DBGrid,AnsiString strPath) { Screen->Cursor=crHourGlass; //???????DBGrid??????Excel?? TDataSet *dsDS=DBGrid->DataSource->DataSet; if(dsDS->RecordCount==0) { Application->MessageBox("?????????!\r\n?????????????","??",IDOK); Screen->Cursor=crDefault; return; } AnsiString strMessage="??????:\n\r"+strPath+"\r\n???,????"; if(!FileExists(strPath)) { Application->MessageBox(strMessage.c_str(),"??",MB_ICONSTOP|MB_OK); Screen->Cursor=crDefault; return; } //Application->MessageBoxA("????????????,????","??",0); Variant Ex,Wb,Sh1,Range1; AnsiString EReport=ExtractFilePath(Application->ExeName)+"EReport\\AReport"+FormatDateTime("yyyymmddhhnnsszzz",Now())+".xls"; if(FileExists(EReport)) { AnsiString strT="????:\r\n"+(AnsiString)EReport+"\r\n???,?????"; Application->MessageBox(strT.c_str(),"??",MB_ICONINFORMATION|MB_OK); //??OLE??????????. try { HWND hPrevApp = ::FindWindow(NULL,"Microsoft Excel"); if(!hPrevApp) { Ex=Variant::CreateObject("Excel.Application"); } else { Ex=Variant::GetActiveObject("Excel.Application"); } } catch(...) { Application->MessageBox("????Excel,????????MS OFFICE!","??",MB_ICONSTOP|MB_OK); Screen->Cursor=crDefault; return; }//End try // Ex.OlePropertySet("Visible",true); Ex.OlePropertyGet("WorkBooks").PR("Open",EReport.c_str()); } //End Opend exists file else //?????,???????????. { if(CopyFile(strPath.c_str(),EReport.c_str(),1)==0) //???? { ShowMessage("??????,???."); Screen->Cursor=crDefault; return; } try { HWND hPrevApp = ::FindWindow(NULL,"Microsoft Excel"); if(!hPrevApp) { Ex=Variant::CreateObject("Excel.Application"); } else { Ex=Variant::GetActiveObject("Excel.Application"); } } catch(...) { Application->MessageBox("????Excel,????????MS OFFICE!","??",MB_ICONSTOP|MB_OK); Screen->Cursor=crDefault; return; }//End try Ex.OlePropertyGet("WorkBooks").PR("Open",EReport.c_str()); Wb=Ex.PG("ActiveWorkBook"); // ?????? Sh1=Wb.PG("ActiveSheet"); int columns=DBGrid->DataSource->DataSet->FieldCount; int iRow=10,iCol=0; for(;iCol<columns;iCol++) //????? { Sh1.PG("Cells",iRow,iCol+1).PS("Value",DBGrid->Columns->Items[iCol]->Title->Caption.c_str()); } DBGrid->DataSource->DataSet->DisableControls(); iRow=11; //????????Excel. try { int RecCount=1; /* WProgress->Show(); WProgress->ProgressBar1->Position=0;*/ for(dsDS->First();!dsDS->Eof;dsDS->Next(),iRow++) //???????????????. { for(iCol=0;iCol<columns;iCol++) { Sh1.PG("Cells",iRow,iCol+1).PS("Value",dsDS->Fields->Fields[iCol]->AsString.c_str()); /* WProgress->ProgressBar1->Position=int(RecCount*100/dsDS->RecordCount); WProgress->Label1->Caption=IntToStr(WProgress->ProgressBar1->Position);*/ Application->ProcessMessages(); } RecCount++; } // WProgress->Close(); /* Sh1.OlePropertyGet("Range", "A12:C10").OleProcedure("Select"); Range1 = Ex.OlePropertyGet("Selection"); //Range1 = Sh1.OlePropertyGet("Selection"); Range1.OlePropertySet("Borders","xlEdgeLeft"); Range1.OlePropertySet("LineStyle","xlThin"); Range1.OlePropertySet("ColorIndex","xlAutomatic");*/ } catch(...) { Application->MessageBox("????????!????????????????\n\r????????,????????","????",MB_ICONSTOP|MB_OK); DBGrid->DataSource->DataSet->EnableControls(); Ex=Unassigned; Wb=Unassigned; Sh1=Unassigned; Screen->Cursor=crDefault; DBGrid->DataSource->DataSet->EnableControls(); return; } Wb.PR("Save"); Ex.OlePropertySet("Visible",(Variant)true); }//end else Screen->Cursor=crDefault; DBGrid->DataSource->DataSet->EnableControls(); }
  6. Jhonas, voce pode fazer um exemplo como passar como parametro? porfarvor! seria mais ou menos assim? DM.QPesqQtd.Close; DM.QPesqQtd.SQL.Clear; DM.QPesqQtd.SQL.Text := 'select * from OS where Data_Inicio >= :Data1 and Data_Inicio <= :Data2'; DM.QPesqQtd.ParamByName("Data1").AsString := (Edit1.Text); DM.QPesqQtd.ParamByName("Data2").AsString := (Edit2.Text); DM.QPesqQtd.Open;
  7. queria fazer uma pesquisa em um banco de dados por quantidades de ocorrencias ex: campo1 (maquinas) A campo2 (defeito) M campo3 (data_defeito) A qual a maquina que ocorre mais defeito registrado? uso tabela paradox
  8. queria fazer uma pesquisa em um banco de dados por quantidades de ocorrencias ex: campo1 (maquinas) A campo2 (defeito) M campo3 (data_defeito) A qual a maquina que ocorre mais defeito registrado? uso tabela paradox
  9. ola pessoal alguém pode me ajudar como faço pra exportar dados de uma tabela paradox para excel? stou usando o borland c++ builder 6 ou indicando um componente gratis que faça isso tambem vale :D valeu pela atenção!
  10. vms

    duvida com undo\redo

    ola micheus a dica que voce deu no outro post, tinha que alterar uma procedure mas essa dica eu apenas adicionei isso e continua do mesmo jeito, voltando apenas 1 iai tem alguma tecnologia tambem pra esse caso :rolleyes:
  11. vms

    duvida com undo\redo

    Micheus como uso esse codigo com DBRichedit?
  12. é exatamente isso, deu certo valeu micheus
  13. função // Espaçamento: 0=simples; 1=1,5; 2=duplo procedure LineSpaceRichEdit(RichEdit :TRichEdit; Espacamento :Integer; AllText :Boolean); var ParaFormat :TParaFormat2; SelStart,SelLength :Integer; begin if AllText then RichEdit.SelectAll; ParaFormat.cbSize := SizeOf(ParaFormat); ParaFormat.dwMask := PFM_LINESPACING or PFM_SPACEAFTER; ParaFormat.dyLineSpacing := Espacamento; ParaFormat.bLineSpacingRule := Espacamento; SendMessage(RichEdit.handle, EM_SETPARAFORMAT, 0, LongInt(@ParaFormat)); // Restaura seleção caso tenhamos mudado para All RichEdit.SelStart := SelStart; RichEdit.SelLength := SelLength; end; codigo procedure TFDICD.JvTransparentButton2Click(Sender: TObject); begin LineSpaceRichEdit(DBRichEdit2,1, False); // espaçamento 1,5 no(s) paragrafo(s) end;
  14. micheus voce pode dar uma dica como fazer isso, porque star dando esse erro valeu!
  15. ola micheus a dica deu certo, valeu! agora é possivel fazer isso com um DBRichEdit?
  16. ola pessoal queria colocar no editor de texto 2 botoes undo e redo no botao undo eu coloco este codigo, mas ele volta apenas uma vez como faço pra voltar varias vezes? da mesma forma com botao redo. alguém pode me ajudar com essas 2 duvidas
  17. pelo que entendi, sou obrigado a instalar o BDE? existe outro tipo de banco de dados que eu consiga rodar meu programa sem precisar de outros? desde já agradeço pela atenção, Jhonas.
  18. quando tento abrir minha aplicação em um pc que não databasedesktop, BDE aparece esse erro Tabela:Cannot perform this operation on a closed dataset já defini o database de duas formas e nenhuma funciona. 1°. caminho = C:\projeto\tabela.db 2°. Variavel = var cPath: String; begin cPath := ExtractFilePath(Application.ExeName); tab1.DatabaseName:= cPath; tab1.open; end; com essa 2° opção posso abrir a programa em qualquer luga do pc sem ser preciso editar cominho do database mas, nenhum funcionou o que pode ser?
  19. ola Micheus! aquele exemplo esta deixando um espaço enorme entre linhas, quase de uma pagina, já tentei com 0, 1,5, 2 e o resultado dar o mesmo. o que pode ser? fiz como estava lá. (foi mal pelo nome errado)
  20. existe uma forma abrir programa com banco de dados paradox em um pc que não tem database desktop instalado?
  21. ola michells pra que serve esse PlainText? não aconteceu nada! dei uma olhada no word e notei que aquela formatação estranha que citei antes, era o espaçamento entre linhas alem das outros tipos de formatação(negrito,subliado,italico)eu queria controlar o espaçamento entre linhas Ex: com um click do button deixaria o espaço entre linhas com 1mm valeu.
  22. OK! ate ai beleza, mas as vezes faço um cntrl + c , cntrl + v de outros texto e o texto vem com uma formataçao estranha. um espaço enorme entre uma linha e outro e não dar pra deletar nem editar no espaço porque e o mesmo espaço da linha anterior.
  23. como faço pra limpar formatação de richedit ex: tem um texto que tem palavras em negrito, sublinhas, fonte grande, outras pequenas, então com um click no button, limpa toda essa formatação tipo "limpar formatação" do word
  24. valeu garoto, você é D+ deu certinho!
  25. cara, é Vivendo&Aprendendo mesmo hein! é exatamente isso que eu queria, valeu! so mais uma pergunta. como faço pra deixar o menu da janela focada marcada (Checked)? desde já agradeço pelo dica.
×
×
  • Criar Novo...