krapotkin
Пользователи-
Постов
2 185 -
Зарегистрирован
-
Посещение
-
Победитель дней
209
Весь контент krapotkin
-
Вот класс TStream есть и он описан, и я понимаю, о чем речь. Что такое ваша Data - никто не знает кроме вас. А вы не рассказываете
- 12 ответов
-
- delphi 10.3.3
- delphi
-
(и ещё 2 )
C тегом:
-
по какому протоколу? голый TCP? Передавать вы все равно будете скорее всего либо TStream либо TBytes. Если у вас есть TStream, то вам нужно его часть скопировать в другой TStream, и его отослать. Опять же в документации http://docwiki.embarcadero.com/Libraries/Sydney/en/System.Classes.TStream.CopyFrom То же самое можно сказать и насчет TBytes http://docwiki.embarcadero.com/Libraries/Sydney/en/System.Classes.TStream.ReadBuffer Играйтесь на здоровье. Но реализация собственного протокола обмена это всегда гораздо больший геморрой, чем например использование http Ну и конечно TStrings тут вообще никаким боком...
- 12 ответов
-
- delphi 10.3.3
- delphi
-
(и ещё 2 )
C тегом:
-
Вы вообще не читаете? я и ссылку дал. LoadFromStream находится прямо рядом с LoadFromFile. Мы, надеюсь, о Stream говорим, когда имеем в виду "поток" ? И файл это никакие не строки бинарного кода. Это полная чушь. Файл это просто сырые данные, набор байтов. А строки как таковые - это понятие, которое вводится специально, с описанием, что имеется в виду, в каком формате хранится, и как с этим работать. Так что нет. Совсем нет.
- 12 ответов
-
- delphi 10.3.3
- delphi
-
(и ещё 2 )
C тегом:
-
ваш пример у меня вызывает вопрос - откуда у вас в jpg файле строки, которые вы так лихо загружаете в TStrings? и что вам мешает сделать просто S.LoadFromFile() ?? более того, и SaveToFile тоже есть. Вполне полноценный ну и предполагается что оф справка должна быть изучена ДО вопросов на форуме http://docwiki.embarcadero.com/Libraries/Sydney/en/System.Classes.TStrings_Methods
- 12 ответов
-
- delphi 10.3.3
- delphi
-
(и ещё 2 )
C тегом:
-
рисовать надо в OnPaint конечно, никакой таймер не подойдет лучше всего для этого подойдет PaintBox
-
не fon.create а fon := TBitmap.Create причем это не зависит от платформы
-
А разве bmp вообще на Android поддерживается?? Да и не нужны в этом приложении ресурсы как в Windows. Есть Deployment, это более современный способ помещения данных в проект. Кроме того, обращение к переменной класса Form1 в методе класса TForm1 - это ошибка. Перегружать рисование формы -FormPaint тоже не из этого мира. Это все должно остаться в VCL / WinApi Давайте сначала начнем - что хотели сделать изначально?
-
Зря) Все очень просто. Дано Rb1, Rb2. Align = TOP, Visible = true Код Rb1.Visible := false; Rb1.Visible := true; приведет к очень интересному результату: Когда исчезнет rb1, rb2 подтянется на самый верх, т.е. RB2.position.Y станет = 0. Теперь rb1 появляется и position.Y у него не меньше чем у RB2. Следовательно, rb1 автоматически отодвинется вниз. Собсно, всё. Выходов из ситуации несколько 1) "Нормальный": создавать RB или Layout c RB или фрейм по необходимости. И последовательно присваивая position.Y := 1000000 они сами будут подтягиваться наверх 2) "И так сойдет": явно пробежать по видимым RB и расставить им Position.Y опять же 1000000 чтобы они подтянулись наверх в нужном порядке 3) "Гибридный": всегда использовать RB по порядку. В первом - первый вопрос, во втором второй и т.д. Лишние снизу - прятать
-
что показывает функция TDirectory->GetFiles(TPath->GetHomePath()) ?
-
ну так же этот вопрос и надо задавать себе изначально.
-
ну логично если указать только имя файла, а путь к нему не указать, то он и не найдется
-
тут есть исходники в конце темы, смотрите, разбирайтесь. я за источник брал инфу из видео http://fire-monkey.ru/topic/5519-фреймворк-для-стандартного-listview/#comment-34912
-
ответ TGlyph
-
Общий сценарий для любых компонентов: Идем в его исходники и ищем метод ApplyStyle Там так или иначе перечисляются все названия стилей, которые компонент ищет в ресурсах и использует для своей отрисовки. Тут хочешь не хочешь, придется немного разобраться что для чего предназначено. Соответственно, далее идем в редактор стилей и эти ресурсы изменяем под свои нужды. Если компонент включает в себя другие компоненты (например listview содержит в себе набор listViewItem), то рекурсивно повторяем операцию и для вложенных компонентов. Если все еще не получилось, можно пойти наоборот, в предка данного объекта и посмотреть, а не задается ли нужное свойство в стилях предка. Вот такой алгоритм. Вам нужно найти, где задается фон для ListView и фон для ListViewItem. Попробуйте. Не выйдет, пишите сюда.
-
самое простое (по мне лично) взять и положить на него новый объект типа крашеный прямоугольник. Свой класс объектов для listView можно создать аналогично тем, что есть в delphi, унаследовав от TDrawable https://www.youtube.com/watch?v=XRj3qjUjBlc
-
нет. готовых компонентов, которые позволяют не держать в памяти полную модель данных, вы, скорее всего не найдете. ListView всего лишь не создает ненужные компоненты для каждого item, как это делает ListBox, но данные для своего отображения может запросить любые в любой момент. В принципе, это достаточная виртуализация imho Кроме того для десктопа пара тысяч элементов в ListView особых проблем обычно не вызывает