Ir ao conteúdo
  • Cadastre-se

Fazzioni

Membro Pleno
  • Posts

    146
  • Cadastrado em

  • Última visita

Tópicos solucionados

  1. O post de Fazzioni em Matriz Para Leitura de Arquivo e separação de dados '|' foi marcado como solução   
    uma forma de fazer é copiar a função Split, muito comum no mundo do desenvolvimento web
     
    neste exemplo, eu uso um TstringList para receber a linha e troco o caractere "|" por novas linhas, não é o modo mais eficiênte, mas é funcional:
     
    usei no exemplo o componente Listview da (paleta win32)
    var input : TStringList; Split_Temp : TStringList; i:integer; Column_count:Integer; begin try Column_count := 0; input := TStringList.Create; // inicilizar o arquivo input.Add('Uno | 2000 | Fiat'); input.Add('S10 | 2016 | Chevrolet'); ListView1.ViewStyle := vsReport; // tipo de visualização da list Split_Temp:=TStringList.Create; for i := 0 to input.Count -1 do //ler linha por linha begin //a ideia é simples: //trocar o caractere "|" de cada linha por uma nova linha, não é a forma mais eficiênte, mas é funcional! Split_Temp.Text := StringReplace(input[i],'|',#13#10,[rfReplaceAll]); if Split_Temp.Count > 0 then with ListView1.Items.Add do //adiciona um novo item no listview begin Caption := Split_Temp[0]; Split_Temp.Delete(0); // para não aparecer 2x na lista SubItems.AddStrings(Split_Temp); //adicionando todas as outras características no item do listview If Split_Temp.Count > Column_count then Column_count := Split_Temp.Count; end; end; //adicionar as colunas na listview for i:= 0 to Column_count do with ListView1.Columns.Add do Caption := 'Coluna: '+IntToStr(i); finally FreeAndNil(input); FreeAndNil(Split_Temp); end; end;  
     
  2. O post de Fazzioni em É possível editar o hardware de uma maquina virtual? foi marcado como solução   
    O software vai usar o único hardware disponível - o do dispositivo físico ( que existe na realidade, de fato).
     
    Qualquer configuração será apenas uma tentativa de diminuir a capacidade disponível, como o uso máximo da memória
     
    outra opção geralmente encontrada é o espaço disponível do disco virtual que, novamente, será menor do que você tem fisicamente.
     
    Resumindo, o software do computador virtual sempre terá uma capacidade menor do que o real.
  3. O post de Fazzioni em Coolers Ficando com a Luz do Led Fraca Depois de Instalar Coolers Novos. foi marcado como solução   
    faça uma estimativa de quantos watts teu computador consome,
    ou tire a prova,
     
    utilize algum software que estresse tanto a CPU quanto a GPU, como um jogo "pesado", a fim de usar a potência de ambos, e:
     
    conecte / desconecte os 6 coolers, se nesse momento o brilho não for estável, certamente, há variação de corrente exigindo uma fonte com maior capacidade para suportar todos os periféricos...
     
     
     
  4. O post de Fazzioni em Passar Record para TObject foi marcado como solução   
    @jeffersoncg  ai você precisa instanciar como Tcomponent
     
     
    exemplo:
     
    type Tcomp = class (TComponent) private propri: String; end; procedure TForm1.test; var com : Tcomp; begin com := Tcomp.Create(self); com.propri := 'my variable'; com.Name := 'com'; ShowMessage( Tcomp(FindComponent('com')).propri); end;  
     
     
     
  5. O post de Fazzioni em Carregar Hint de um Form através de outro via Ini foi marcado como solução   
    @jeffersoncg  aparentemente é um código válido, tente utilizar o breakpoint do delphi para verificar se a função está percorrendo a lista...
     
    outra forma de fazer a mesma coisa:
    procedure setHints(form:string); var cfg : TIniFile; i : integer; comp : TComponent; s : string; begin try comp := Application.FindComponent(form); if not Assigned(comp) then exit; cfg := TIniFile.Create(ExtractFilePath(Application.ExeName)+'Hints.ini'); if not cfg.SectionExists(form) then exit; for i := 0 to comp.ComponentCount -1 do begin s := cfg.ReadString(comp.Name,comp.Components[i].Name,''); if (s <> '') and (comp.Components[i] is TControl) then with (comp.Components[i] as TControl) do begin Hint := s; ShowHint := true; end; end; finally FreeAndNil(cfg); end; end;  
  6. O post de Fazzioni em Button não está trazendo a informação foi marcado como solução   
    Olá, os objetos criados não precisam de referência como acontece no java  e os valores das variáveis    não são tratados como propriedades,
    acredito que seu códico deve ficar assim:
    procedure TForm1.btnMostrarClick(Sender: TObject); {var edtN1 : Integer; edtN2: Integer; você não pode declarar essas variáveis, pois já existem edits com o mesmo nome, você so precisa citar o objeto} var a, b : integer; begin a := strtoint(edtN1.text); //no pascal é necessário converter de texto para inteiro, se não for inteiro irá gerar um exception, portanto, é necessário tratar b := strtoint(edtN2.text); // você pode fazer assim: //if strtoint(edtN1.text) > strtoint(edtN2.text) then // ou if a > b then ShowMessage('O número 1 é o maior!') else ShowMessage('O número 2 é o maior! OU IGUAL');   end;  
    para saber o número máximo que a variável suporta, você pode usar a função:
    ShowMessage(IntToStr(high(a))); // e ShowMessage(IntToStr(low(a)));  
  7. O post de Fazzioni em ProgressBar envio de E-mail foi marcado como solução   
    Problema resolvido, pesquisando mais a fundo, conclui que a mensagem é codificada, por isso o valor da variavel AWorkCount é sempre zero, solução:
     
      var FILE_Stream : TMemoryStream;beginTry      FILE_Stream := TMemoryStream.Create;      IdMessage.SaveToStream(FILE_Stream);      Form1.ProgressBar1.Max := FILE_Stream.Size;Finally      FreeAndNil(FILE_Stream);end;

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...