Добрый день,
посмотрите на свой код внимательнее.
Вначале вы создаете битмап.
В нем рисуете линию.
Потом очищаете битмап в image1. И заливаете фон белым цветом
Потом заменяете очищенный битмап в Image1, своим MyBitmap.
В итоге результат работы метода Clear скрывается.
На счет артефактов, я не вижу их на воспроизведенном примере. Линия есть. Если вы выложите ваш проект, чтобы на нем можно было посмотреть, было бы здорово.
Именно с "EIdException" у меня работает вменяемо. Как вариант можно сделать так:
type
TForm1 = class(TForm)
procedure Button1Click(Sender: TObject);
private
MyFlag : Boolean;
public
end;
...
procedure TForm1.Button1Click(Sender: TObject);
begin
TThread.CreateAnonymousThread(nil, procedure()
var
IdHTTP1 : TIdHTTP;
begin
IdHTTP1 := TIdHTTP.Create(nil);
form1.MyFlag := false;
IdHTTP1.Get('http://lenta.ru');
form1.MyFlag := true;
IdHTTP1.free;
end).start;
// Ну и тут запустить таймер, который проверит через нужное вам время переменную MyFlag
end;
Добрый день,
Я бы взял TScrollBox для контейнера сообщений.
Каждое сообщени представил в виде TLabel с вашим стилем в виде облаков
TLabel поместил в TLayout и внутри него выравнивал бы по правому или левому краю.
А сами TLayout выравнивал бы по верху.
Такая опция добавлена для пользователей. Поддерживаются два типа удалений:
Скрытие. Скрытие от пользователей вашего сообщений с возможностью восстановление. Скрытое сообщение доступно на просмотр модераторам и администраторам
Удаление. Полное удаление сообщение без возможности восстановить.