Ir para conteúdo
Fórum Script Brasil

Micheus

Veteranos
  • Total de itens

    3.189
  • Registro em

  • Última visita

Tudo que Micheus postou

  1. E para que esta funcionalidade seja ativada, defina a propriedade ShowHint do form para True. ;)
  2. Não funciona mesmo. Greed, este texto você não o tem em um arquivo RTF também (se é referente aos outro tópicos sobre o assunto)? Então, você tem algumas opções (uma delas a que o Denis lhe sugeriu - veja este post do colega Erso). Mas, basicamente o que você precisa ter em mente você acha neste outro meu post. E lembre-se que você pode passar os dados do clipboard para um TRichEdit sem problemas - como você já o fez antes. Abraços
  3. darth_ivan, por acaso o erro está ocorrendo neste "blu.Free"? Se sim, por acaso você escreveu o evento OnClose marcando o parâmetro Action := caFree;? Se for, poderia estar ai o problema. Abraços
  4. Veja se é isso: clique com o botão direito do mouse sobre o quadrado do TPageControl e use a opção NewPage.
  5. Balckleaf, existem alguns tópicos sobre o assunto (talvez não tirem todas as suas dúvidas, mas podem ajudar). Veja o resultado da busca por Player: resultados(alguns resultados não vão lhe interessar) Eu pediria que, quando os assuntos não tem relação direta, que crie um novo tópico sim - isto mantém o forum organizado e facilita a busca dos colegas baseados no assunto. ;) mas vamos ao questionamento: Acredito que você esteja falando do componente TPageControl - paleta Win32. Qual a dúvida especificamente.
  6. Micheus

    shellexecute

    Então. Por exemplo, quando você usa opção como mrOk e mrCancel e chama o form que o possui com ShowModal, ao clicar neste botão a janela será fechada.
  7. Micheus

    shellexecute

    frnd, isto não faz sentido. Por acaso este botão anterior não teria a sua propriedade ModalResult modificada (diferente de mrNone) ?
  8. Greed, supondo que esta consulta também será em tabela Paradox (mencionada em seu outro post), caso ocorra erro na execução da mesma (ao abrí-la), retire o " limit 50" da cláusula Order By, pois o Paradox não dá suporte a esta funcionalidade (se não me falha a memória). Abraços
  9. Mas Denis, para o que ele pretende fazer: "Eu preciso que ele liste todas as tarefas agendadas para o dia atual. Não querendo abusar muito da boa vontade, mas como eu faria para programar o banco de dados para apagar os registros após um determinado tempo?" Não ficaria mais fácil se ele usasse um campo tipo Date no banco, e na hora de gravar, converteria a data texto do DateTimePicker para um Date (usando StrToDate)? Penso que simplificaria as coisas futuramente. Sem contar que a ordenação de uma consulta usando um campo de data - no formato string - quase sempre traz dor de cabeça, a menos que você a armazene no formato yyyy/mm/dd. Abraços
  10. Digamos que no caso do Paradox, isto é meio relativo, porque depende de como está a configuração no BDE. Na configuração do formato de data, o campo MODE pode indicar m/d/y (0), d/m/y (1) ou y/m/d (2). Greed, vamos acertar as coisas. Sendo agenda um string, é relevante o que o Denis Courcy lhe questionou e comentou: alguns bancos tratam a data em um formato diferente. A idéia de parametrização do Erso é a mais indicada para deixá-lo livre deste problema de formatação. Entretanto, se o exemplo que ele lhe passou não funcionou, pode ser divido ao tipo do campo Data_consulta (o qual o Denis lhe questionou o tipo e você não informou) não ser do tipo Date como assumido pelo colega Erso - esta informação é relevante. Quanto as questões adicionadas enquanto eu escrevia este post, fica pendente de minha parte. Abraços
  11. Estão na pasta de instalação do BDE. Normalmente o caminho é esse: C:\Arquivos de programas\Arquivos comuns\Borland Shared\BDE
  12. frnd, este final deve ser em algum lugar deste procedimento onde o endereço alocado para de LB seja válido e após você fazer o que deseja com ele. Eu editei a identação do seu código no post #1, para ficar mais claro onde estão os blocos de instrução. Assim, baseado no que você postou, o Free deveria ser chamado no ponto listado abaixo: ... If Form1.Table1.Locate('CODBINGO',string(Edit1.Text), []) then begin Form5.Show; // se encontrou exibe o Form com o nome da empresa begin LB:= TStringList.Create; If not Tem(Form6.ListBox1, Form3.Edit1.Text) then begin LB.Add(Form3.Edit1.Text); Form6.ListBox1.Items.Add(Edit1.Text); end; LB.Free; <=== ao final deste bloco, onde ele foi inicializado end; end else ...mas, lembrando, que até agora você não fez nada com o conteúdo dele. ;) Impossível funcionar, se a variável é LOCAL ao procedimento do seu outro botão - Buscar. Se você vai precisar desta lista para usar durante toda a existência desta tela, então, você tem que definir e criar ela de modo GLOBAL ao form. Abraços
  13. andei pesquisando mais um pouco e achei mais uma pista. Tenta definir assim: IDM_JUSTIFYFULL = 50; o tal 58, seria um equivalente a IDM_JUSTIFYGENERAL. :huh: Já que está fazendo um editor porreta :D, baixe este unit anexa (IEConst.pas) e você vai encontrar outras constantes interessantes - apenas remova a extensão ".txt". O original está disponível neste link (ref. SuperMemo), mas fica uma bagunça Abraços IEconst.pas.txt
  14. frnd, você está "pensando" na execução de duas instruções, mas não usou o delimitador de bloco (begin..end) para isto. Quando você faz um teste com a instrução if, se houve mais que uma instrução a ser executada você TEM que usar o delimitador de bloco, do contrário, apenas a primeira instrução após o if, o respeitará (será executada conforme condição) Segue a correção: begin LB:= TStringList.Create; If not Tem(Form6.ListBox1, Form3.Edit1.Text) then begin LB.Add(Form3.Edit1.Text); Form6.ListBox1.Items.Add(Edit1.Text); end; end; mas para ser sincero, acho que você deu uma viajada... Para que é que você está usando este LB? Ele é criado dentro do procedimento, a verificação não é feita sobre ele, ele recebe a inserção do texto e va não faz mais nada com ele. Fora que faltou liberá-lo da memória - LB.Free. begin // LB:= TStringList.Create; <==== REMOVER If not Tem(Form6.ListBox1, Form3.Edit1.Text) then // LB.Add(Form3.Edit1.Text); <==== REMOVER Form6.ListBox1.Items.Add(Edit1.Text); <== FICA APENAS ESTA end; Abraços
  15. Que tal utilizar a propriedade ReadOnly? Defina-a como False. [Editado] ---------------------------- Blackleaf, vejo que você editou sua resposta e conseguiu resolver o problema. Só para não ficar esta dúvida, eu vou explicar esta dúvida, mas esta abordagem, aparentemente, não é a solução do seu problema. neste exemplo, Time2 seria o tempo congelado (aquele inicial) e Time3 seria o tempo decorrido. Assim, somando o horário em que o relógio parou, com o tempo decorrido, você deveria ter o tempo corrigido (próximo ou igual ao atual) As variáveis são do tipo TTime - nada tem a ver com o Timer (componente temporizador)
  16. Para ver como é importante as informações o mais corretas possíveis... Anderson Scinfo, supondo que você está fazendo a edição no grid, e este botão possa fazer parte justamente da coluna que você deseja fazer a busca em outra tela, você poderia usar o recurso que já existe lá. Implemente e veja se seria isto: - Dê um duplo click no seu DBGrid; - Selecione a coluna (campo) na lista que aparece; - Na janela Object Inspector, localize a propriedade ButtonStyle e troque ele para cbsEllipsis; - Feche a tela de seleção dos campos e selecione o seu DBGrid; - Na janela Object Inspector, localize o evento OnEditButtonClick e dê um duplo click; - agora codifique a abertura da janela de busca e na seqüência a inicialização dos campos desejados, com os valores resultantes da busca. Abraços
  17. DpOIZ, era justamente onde eu queria chegar com as perguntas. O Zeos em suas pasta lib distribui os Clients, de cada versão do banco, onde o nome é composto deste número. Ex. MySQL: - libmysql40.dll (versão 4.0) - libmysql41.dll (versão 4.1) - libmysql320.dll (versão 3.2.0) - libmysql323.dll (versão 3.2.3) - ... existem algumas "duplicadas", como libmysqld41.dll - observe que este d refere-se a uma versão de depuração (debug) - não é necessário distribuir este tipo de client. Assim, quando você seleciona um determinado protocolo (associada a versão), deverá distribuir esta dll com sua aplicação - Fica a sugestão de pô-la na pasta de instalação da sua aplicação e não na pasta system. Abraços
  18. Jhonas, apesar de tudo o que você já expôs ao colega Blackleaf, não custa nada corrigir este exemplo para dele: Label4.caption := TimeToStr(Time1 + Time2); mas isto, apenas mostrará a soma de dois horários (variáveis do tipo TTime) - mais nada. Abraços
  19. DpOIZ, perguntinhas... - qual a versão do banco no servidor? - como você configurou seu componente TZConnection? (as principais propriedades - não incluir user e password) - que dll's você copiou? (as do Zeos)
  20. einsen, em imprimeDieta você declarou o parâmetro dieta como sendo do tipo da estrutura tDieta, e ao que parece esta estrutura refere-se a uma matriz, já que é um array de 10 posições de outra estrutura (tRefeicao) que, por sua vez, é um array de 10 posições da estrutura tAlimento. assim, você não tem como indexar diretamente dieta, como em return(dieta); logo, utilizando o "campo" refeicao da estrutura dieta: dieta.refeicao[<índice>], voce terá acesso a uma estrutura do tipo tRefeicao na posição indicada por <índice>. esta estrutura por sua vez, possui um "campo" alimento, que é um array, que em uma determinada posição lhe dará acesso a uma estrutura do tipo tAlimento. O acesso a esta estrutura fica, então, mais comprido um pouco: dieta.refeicao[<índice_refeição>].alimento[<índice_alimento>] A partir daí, é só acessar os "campos" da estrutura tAlimento, conforme necessário: dieta.refeicao[<índice_refeição>].alimento[<índice_alimento>].nome = 'nome do sujeito'; dieta.refeicao[<índice_refeição>].alimento[<índice_alimento>].cal = 15.5; Logo, parece que você precisará de mais que um parâmetro de indexação para poder localizar corretamente a pessoa que terá seus dados listados. Abraços
  21. ricardofreis, se você programar em Delphi poderia fazer um pequeno programa para executar scripts para o Paradox (eu não lembro de algum já pronto). Caso lhe interesse dê uma olhada neste post. Abraços
  22. Arrais Júnior, apenas completando o que o colega Jhonas já citou, este tipo script é utilizado pelo Visual Studio para gerar um arquivo de recursos a ser utilizado pela aplicação final (um executável). Ou seja, você não consegue colocar instruções nele para abrir um EXE - ele é usado, basicamente, para a construção da interface visual. Abraços
  23. Sempre tem... :D Mas, respeitando as limitações do Paradox, é claro. ;) Experimente deste modo: TXT := 'Select TELEFONE.CODIGO, '+ 'TELEFONE.TELEFONE, '+ 'TELEFONE.USUARIO, '+ 'TIM.NUMACS, '+ 'TIM.TPSERV, '+ 'cast(TIM.DATA as date) AS DATA, '+ 'TIM.DATA AS DATA_STR, '+ 'TIM.DURACAO, '+ 'TIM.VALOR '+ 'from TELEFONE, TIM '+ 'Where (TELEFONE.TELEFONE = TIM.NUMACS) AND '+ 'TIM.Tipo = '+QuotedStr ('N')+' Order By TIM.NUMACS, 6';observe que eu renomeei a coluna DATA para DATA_STR e usei DATA para o resultado do cast que será um TDate. Na cláusula ORDER BY usamos o índice da coluna tipo date (DATA). Abraços
  24. Danilo, se você estiver utilizando a versão 1.5.n, pode ser uma limitação herdada do Interbase - o tamanho do registro do índice não pode exceder 255 bytes. (ref. Ivan Prenosil's Firebird/InterBase site) Mas, caso você esteja utilizando a versão 2.n, pode ser que você tenha utilizado um tamanho de página pequeno (como 1024 bytes). A partir da versão 2, o registro do índice não pode exceder 1/4 do tamanho da página configurada para o banco. Voce usa o IBExpert como front-end para gerenciar o banco? Se sim, fica fácil você mudar o tamanho da página. Basta acessar a opção Serviços -> Cópia de segurança da Base de Dados. Após concluído o backup, você usa a opção Serviços -> Repor cópia de segurança, onde poderá definir um novo tamanho para a página. Abraços
  25. Micheus

    ajuda no firebird

    lamp, você provavelmente instalou a versão 1.5.n do Firebird. Se for este realmente o caso, a sintax está incorreta porque o SEQUENCE foi introduzido na versão 2.0. Assim, ou você atualiza seu banco de dados ou utiliza a sintaxe antiga, substituindo-a por GENERATOR. Abraços
×
×
  • Criar Novo...