gdm_it Опубликовано 16 сентября, 2015 Поделиться Опубликовано 16 сентября, 2015 (изменено) Здравствуйте, какие элеиенты форм лучше применить чтобы чат на телефоне смотрелся лучше чем просто в мемо. Например сообщения хотелось бы записхнуть в CalloutPanelы и их как то динамически нагенировать, но как оказалось свойства текста там нет. Вопрос : какие элементы тут можно применить, чтобы получить желаемое приятное глазу движение к этому Изменено 16 сентября, 2015 пользователем gdm_it Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 17 сентября, 2015 Модераторы Поделиться Опубликовано 17 сентября, 2015 посмотрите здесь Цитата Ссылка на комментарий
0 zairkz Опубликовано 17 сентября, 2015 Поделиться Опубликовано 17 сентября, 2015 Здесь тоже глянь, классно вышло у Евгения Корепова Цитата Ссылка на комментарий
0 gdm_it Опубликовано 17 сентября, 2015 Автор Поделиться Опубликовано 17 сентября, 2015 о спасибо, буду пробововать Цитата Ссылка на комментарий
0 gdm_it Опубликовано 17 сентября, 2015 Автор Поделиться Опубликовано 17 сентября, 2015 Пока тема горяча, из примеров подсказанных выше procedure TForm2.Button1Click(Sender: TObject); var CR: TCalloutRectangle; L: TText; TmpImg: TImage; begin CR := TCalloutRectangle.Create(Self); CR.Parent := VSB; CR.Align := TAlignLayout.alBottom; CR.CalloutPosition := TCalloutPosition.cpLeft; CR.Margins.Top := 10; CR.Margins.Bottom := 10; CR.Margins.Right := 5; CR.Height := 75; L := TText.Create(Self); L.Parent := CR; L.Align := TAlignLayout.alClient; L.Text := 'A quick brown fox jumped over the yellow log running away from the pink dog and ran down the lane.'; L.Margins.Left := 15; L.Margins.Right := 5; L.Width := CR.Width-20; L.WordWrap := True; L.AutoSize := True; L.OnPaint := LabelPaint; TmpImg := TImage.Create(Self); TmpImg.Parent := CR; TmpImg.Align := TAlignLayout.alRight; TmpImg.Bitmap.Assign(Image1.Bitmap); TmpImg.Width := 75; end; тут создается динамически форма с сообщением, но как создать динамически сообщения из истории, тамже нужно переменные объявлять? Цитата Ссылка на комментарий
0 #WAMACO Опубликовано 17 сентября, 2015 Поделиться Опубликовано 17 сентября, 2015 для хранения истории Sqlite Цитата Ссылка на комментарий
0 gdm_it Опубликовано 17 сентября, 2015 Автор Поделиться Опубликовано 17 сентября, 2015 я не о сохранении тут вопрсосов нет пока, я про то что как в цикле вывести неизвестное количество сообщений в красивой форме, ведь придется генерировать эти рамки а в каждой рамке надо объявление своих переменных задача есть случайное число истории собщения и их нужно отобразить в томже виде что и новое сообщение, рамка автарка текст и т.д. Цитата Ссылка на комментарий
0 AngryOwl Опубликовано 17 сентября, 2015 Поделиться Опубликовано 17 сентября, 2015 Я бы рекомендовал посмотреть здесь. Там много чего схожего. Большая часть построена на стилях, что, в свою очередь, решает Вашу "задачу". Не вижу никаких сложностей. Ну и для примера: Цитата Ссылка на комментарий
0 gdm_it Опубликовано 21 сентября, 2015 Автор Поделиться Опубликовано 21 сентября, 2015 (изменено) Пользуюсь Rad Studio XE8...там нету параметра BindingName, как заполнять элементы своего стиля? на попытку заполнить как в найденых примерах item.Binding['text1'] ругается Изменено 21 сентября, 2015 пользователем gdm_it Цитата Ссылка на комментарий
0 AngryOwl Опубликовано 21 сентября, 2015 Поделиться Опубликовано 21 сентября, 2015 пишу "от руки", так что... допустим в вашем ListBoxItem есть дополнительный компонент TText (для отображения какого-то "иного" текста, а не основного), StyleName которого вы называете "messagecaption" (или как вашей душе угодно). тогда обращение к данному компоненту TText должно выглядеть следующим образом item{ваш_конкретный_итем}.BeginUpdate; try item.StylesData['messagecaption.Text'] := 'тра-ля-ля'; // ваш текст finally item.EndUpdate; end; ну вот все в таком духе... З.Ы. и при чем тут Binding ? Цитата Ссылка на комментарий
0 gdm_it Опубликовано 21 сентября, 2015 Автор Поделиться Опубликовано 21 сентября, 2015 спс но пока не получается делаю правдо на прямую item.StylesData['messagecaption.Text'] := 'тра-ля-ля'; // ваш текст ЗЫ Binding это я ролик увидел японский с примером, как раз все было наглядно, но не пошло Цитата Ссылка на комментарий
0 gdm_it Опубликовано 21 сентября, 2015 Автор Поделиться Опубликовано 21 сентября, 2015 (изменено) так и не могу понять почему пустые итемы добавляются на кнопку повесил такое действие Item := TListBoxItem.Create(nil); Item.Parent := ListBox2; // Item.StyleLookup := 'mystyle'; Item.StylesData['text1style.Text'] := 'Хотел тут свой текст'; в результате пустые новые итомы, что я забыл еще сделать? Изменено 21 сентября, 2015 пользователем gdm_it Цитата Ссылка на комментарий
0 #WAMACO Опубликовано 21 сентября, 2015 Поделиться Опубликовано 21 сентября, 2015 unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.ListBox, FMX.Controls.Presentation, FMX.StdCtrls, FMX.Layouts; type TForm1 = class(TForm) ListBox1: TListBox; Button1: TButton; StyleBook1: TStyleBook; ListBoxItem1: TListBoxItem; ListBoxItem2: TListBoxItem; ListBoxItem3: TListBoxItem; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.fmx} procedure TForm1.Button1Click(Sender: TObject); var item: TListBoxItem; begin item := TListBoxItem.Create(nil); item.BeginUpdate; item.Parent := ListBox1; Item.StyleLookup := 'ListBoxItem2Style1'; item.StylesData['text2.Text'] := 'Хотел тут свой текст'; item.Text := 'Верхняя строка!'; item.Height:=45; item.EndUpdate; end; end. вот выводит все! Цитата Ссылка на комментарий
0 gdm_it Опубликовано 22 сентября, 2015 Автор Поделиться Опубликовано 22 сентября, 2015 спс вроде получилось - добавл лаяут в свой стиль в стиле лаяут кстати обязательно создавать или нет? Цитата Ссылка на комментарий
0 gdm_it Опубликовано 15 октября, 2015 Автор Поделиться Опубликовано 15 октября, 2015 (изменено) Опять споткнулся. сделал сложный лояут, и перестали заполнятся данные по примеру Item.StyleLookup := 'layout1style'; item.StylesData['text2style.Text'] :='Мой текст'; как тут правильно обратиться к text2style? Изменено 16 октября, 2015 пользователем gdm_it Цитата Ссылка на комментарий
0 gdm_it Опубликовано 18 октября, 2015 Автор Поделиться Опубликовано 18 октября, 2015 что никто не подскажет? Цитата Ссылка на комментарий
Вопрос
gdm_it
Здравствуйте, какие элеиенты форм лучше применить чтобы чат на телефоне смотрелся лучше чем просто в мемо.
Например сообщения хотелось бы записхнуть в CalloutPanelы и их как то динамически нагенировать, но как оказалось свойства текста там нет.
Вопрос :
какие элементы тут можно применить, чтобы получить желаемое приятное глазу
движение к этому
Изменено пользователем gdm_itСсылка на комментарий
15 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.