Fazzioni
-
Posts
146 -
Cadastrado em
-
Última visita
Tópicos solucionados
-
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;
-
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.
-
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...
-
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;
-
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;
-
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)));
-
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