Перейти к содержанию
Fire Monkey от А до Я

yooSee

Пользователи
  • Постов

    33
  • Зарегистрирован

  • Посещение

  • Победитель дней

    1

Весь контент yooSee

  1. Привет ребята! Вобщем есть текст в Memo с которого нужно брать строки с конца файла т.е. memo.lines.count-1 в цикле, после этого создавая отельно динамически компоненты, заносить текстовые строки с memo в эти созданные динамически компоненты, ниже пример: procedure TVKBaseForm.Button2Click(Sender: TObject); var rec: TRectangle; txt: Ttext; i: word; // - можно и integer сути не поменяет begin for i := Memo1.Lines.Count - 1 downto 0 do begin rec := TRectangle.Create(Self); rec.Parent := MainLayout1; rec.Height := 15; rec.Align := TAlignLayout.Top; txt := Ttext.Create(Self); txt.Parent := rec; txt.Align := TAlignLayout.Client; txt.Text := Memo1.Lines.Strings[i]; end; end; Работает, но не правильно. Почему выдает не правильный порядок при выводе? почему создает сначала первый файл? Почему создает не все? Может есть какая-то синхронизация? Пробовал так же A: integer; begin A := 1; // Присваеваем единицу While A <> Memo1.Lines.Count - 1 do begin A := A + 1; s := Memo1.Lines.Strings[A]; Application.ProcessMessages; rec := TRectangle.Create(Self); rec.Parent := MainLayout1; rec.Height := 15; rec.Align := TAlignLayout.Top; txt := Ttext.Create(Self); txt.Parent := rec; txt.Align := TAlignLayout.Client; txt.Text := s; Помогите разобраться
  2. Извиняюсь что не по теме чуть чуть, все работает отлично, спасибо!) На сервере есть index.php и base.txt при записи в него через get запрос var s: string; begin s := utf8toansi(Edit1.Text); WebBrowser1.Navigate (('урл/?adstext=' + s)); то приходят иероглифы. файл base.txt в ansi отправляю в ansi читаю в ansi выводит . в index.php нет каких либо переводов в кодировки вот что там <?PHP $filename = "base.txt"; $name_var='adstext'; // проверка существования файла if (file_exists($filename)) { $file = fopen($filename, "a"); } else { $file = fopen($filename, "a"); } $text = $_GET[$name_var]."\n"; fwrite($file, $text); fclose($file); ?>
  3. А будет ошибка - No mapping for the unicode character exist in the target multy byte code page стоп , тупой проглядел TEncoding.UTF8 в TEncoding.ANsi
  4. это отдельная процедура? чет я туплю как она с потока вызвалась? Подставляю ваш пример в поток , тишина.
  5. а можно пример как правильно? если честно не особо важен в проекте индикатор загрузки.
  6. Доброе время суток . Я только начал знакомится с потоками , не судите меня строго . Вот код . Смысл которого через отдельный поток загружать текст с сервера и отображать в memo. Что я делаю? На сервере из вне имеется файлкоторый по api запросам пополняется. Его нужно в потоке постоянно выводить в memo. подгружать каждый раз. При использовании на win вес работает, на андроид не качает и не сздает файл в чем может быть проблема? type ThreadHTTP = class(TThread) private public Stream: TMemoryStream; i: integer; procedure Execute; override; procedure ShowResult; end; {$R *.fmx} procedure TForm1.Button1Click(Sender: TObject); begin Timer1.Enabled := true; end; procedure TForm1.Timer1Timer(Sender: TObject); var MyHTTP: ThreadHTTP; begin ProgressBar1.Value := 0; MyHTTP := ThreadHTTP.Create(False); end; { ThreadHTTP } procedure ThreadHTTP.Execute; var j: integer; begin inherited; i := 0; j := 0; Stream := TMemoryStream.Create; Form1.IdHTTP1.Get('http://сайт/base.txt', Stream); Form1.ProgressBar1.Max := Stream.Size; while j <= Stream.Size do begin inc(i); Synchronize(ShowResult); inc(j); Form1.ProgressBar1.Value := Form1.ProgressBar1.Value + 1; end; Stream.SaveToFile(tpath.getdownloadspath + '/base.txt'); Form1.Memo1.Lines.LoadFromFile(tpath.getdownloadspath + '/base.txt'); Stream.Free; end; procedure ThreadHTTP.ShowResult; begin Form1.Label1.Text := IntToStr(i) + ' kbs'; end;
×
×
  • Создать...