Ir para conteúdo
Sistema de Servidores de Jogos ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

Posts Recomendados

Vocês podem me ajudar? To usando o seguinte código:

 

IniVar.WriteInteger('Nick',Memo1.Lines[x] ...);

 

Ele funciona assim, eu preciso escrever no arquivo ".ini' os seguintes parâmetros:

[Nick]

Exemplo=valor

 

Só que eu preciso escrever todas as linhas do memo 8 neste parâmetro, ficando tipo uma "tabela",

Por exemplo, na primeira linha do Memo1 eu tenho "Exemplo", na segunda linha "exemplo2". Eu queria que apenas essa linha de código escrevesse:

 

[Nick]

Exemplo=valor

Exemplo2=valor

 

Eu não posso repetir essa linha de código várias vezes e ir alterando o valor de "x", pois cada vez "x" terá um valor que eu não sei, e ficaria extenso demais ficar copiando... Acho que um loop caberia, mas não sei trabalhar com ele sem travar tudo.

Grato desde já.

Membro - Bronze - Geek - Bronze - Tech - Mod - Coord - Co-Admin - Platinum

Link para o comentário
https://www.webcheats.com.br/topic/2182224-delphi-probleminha-com-c%C3%B3digo/
Compartilhar em outros sites

Se as tags seguem um padrão, você pode utilizar as funções POS() e COPY() para pegar a posição de um texto (por exemplo, pegar o texto depois do caractere " = ") e copiar para o arquivo...

 

Se possível nas próximas postagens, evite de formatar o texto colocando essas letras em preto, uso o tema black da WC e é horrível ter que ficar selecionando o texto para ler.

 

 

Para simplificar as coisas, tente encontrar padrões nos dois lados, um padrão de texto no memo (cada linha uma tag e um valor por exemplo) e um padrão de texto para o arquivo .ini. Depois volte no tópico mostrando o que tem no memo1 e o que você quer no arquivo .ini que eu te ajudo a construir um algoritmo para automatizar essa tarefa.

 

 

_______________________________________________

 

O loop para copiar exatamente o que está no memo para o arquivo seria algo como:

 

É necessário se cadastrar para acessar o conteúdo.

 

É só trabalhar os detalhes em cima disso para copiar o que quiser do jeito que quiser.

 

Não tenho mais o delphi instalado aqui para dar uma coisa mais exata, mas da para construir a função numa boa.

Meus brinquedos em WinAPI:

Calculador

MemoryScanner

Faça parte também da DarkProgramming Team!

Link para o comentário
https://www.webcheats.com.br/topic/2182224-delphi-probleminha-com-c%C3%B3digo/#findComment-8687916
Compartilhar em outros sites

Olá BH, eu também uso a skin Dark e não tenho problemas quanto à cor... De qualquer modo estarei voltando ao cinza hehehe... Vou lhe explicar o que quero fazer e talvez você me ajude a 'remontar' a lógica.

Eu estou trabalhando com IniFiles (na verdade não sei se isso seria o mais adequado ao caso, mas DB seria mais complexo e mais demorado)... Estou usando aquelas velhas funções de Ini.ReadInteger(), Ini.WriteInteger(). A minha aplicação tem a função, de computar os votos e mostrar os mais votados. Porém é como se as opções fossem muito "variáveis" (cada hora alguém usaria um número de opções para serem votadas).

 

O usuário digita um nome qualquer no edit1, outro nome diferente no 2 e outro nome no 3. Esses nomes quando ele clicar num botão, serão escritos num memo1 (este memo tem a função calcula e essa função conta quantas vezes o nomex está escrito no Memo1 (quantos votos ele recebeu).

E também salvo num memo2 (este memo usa a função deletarIdenticos para deletar os nomes repetidos e deixar apenas 1 vez cada, em cada linha

Então, no memo1 eu tenho os votos (quantas vezes o nome foi escrito) e no memo2 eu tenho os nomes apenas.

 

Deste modo eu escrevi:

WriteInteger{escrevo no .ini}('ParâmetroQualquer',Memo2.Lines[0] {o nome que está na primeira linha do memo2}, Funcao_Calcula(Memo2.Lines[0] {quantos votos o primeiro nome recebeu});

(considere os "
{}
" como comentários)

Beleza, eu salvei no meu .ini, qual é o nome da linha 0 e quantos votos ele recebeu. Porém eu teria que repetir essa mesma rotina várias vezes, até chegar no último nome (última linha escrita). Se eu soubesse que iriam ter 3 linhas eu escreveria do 0 ao 2. Porém pode ter 10, 9 ou 20. Cada hora será uma coisa.

 

Aliás, pra mim ler usando Ini.ReadInteger() depois eu usaria uma simples rotina:

ReadInteger('ParâmetroQualquer', 'nome', valorPadrão);

 

Desculpa escrever tanto, eu quis mostrar como funciona pra você entender o que eu quero fazer. Obrigado pelo help ai, ainda to aprendendo hehe...

 

@edit, aliás a minha função calcula é bem simples, ela só conta quantas vezes o um texto qualquer está escrito no memo1. No caso, eu calculei quantas vezes a primeira linha está escrita no memo1).

Membro - Bronze - Geek - Bronze - Tech - Mod - Coord - Co-Admin - Platinum

Link para o comentário
https://www.webcheats.com.br/topic/2182224-delphi-probleminha-com-c%C3%B3digo/#findComment-8688168
Compartilhar em outros sites

Um dos últimos desafios que fiz com amigos de fórum antes de parar de programar foi algo parecido com o que você quer.

 

A aplicação tem o simples objetivo de mostrar quantas vezes a mesma palavra foi digitada (sem case sensitive) e mostrar qual foi a mais digitada (ou votada no teu caso).

 

Estou morrendo de sono para explicar detalhadamente, mas vou deixar o download do projeto completo aqui para você analisar e absorver o que for útil, caso tenha dúvidas deixe no tópico que eu respondo assim que acordar do coma.

 

 

 

Download:

É necessário se cadastrar para acessar o conteúdo.

Scan:

É necessário se cadastrar para acessar o conteúdo.

 

Não faço ideia da onde ele tirou esses falsos positivos, a aplicação só trabalha com strings, deve ser porque eu crio componentes em tempo de execução (labels) como eu expliquei em um dos últimos tópicos aqui da área delphi.

Meus brinquedos em WinAPI:

Calculador

MemoryScanner

Faça parte também da DarkProgramming Team!

Link para o comentário
https://www.webcheats.com.br/topic/2182224-delphi-probleminha-com-c%C3%B3digo/#findComment-8688196
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.