Hevard
-
Постов
78 -
Зарегистрирован
-
Посещение
-
Победитель дней
7
Сообщения, опубликованные Hevard
-
-
В 28.07.2017 в 09:21, M1shQa сказал:
Ошибка решается изменением service gui
ServiceGUI = '{00001101-0000-1000-8000-00805F9B34FB}';
В каком месте изменяется?
-
-
В 10.09.2020 в 03:49, brunnengi сказал:
Доброго дня! И что с этим делать? А то пол ветки про магический фикс и никакой конкретики, акромя ссылки на закрытый ресурс...
-
14 часов назад, Vitaldj сказал:
Ну, то есть, циклопентанпергидрофенантрен тебя не смутил?
Нет, ибо к IDE это никак не относится. Мне достаточно знания, что такое ацетилсалициловая кислота.
-
В 16.05.2021 в 11:32, Vitaldj сказал:
Какое 14.1? Автор пишет 10.4
Ох уж эти суровые челябинские пользователи! А если внимательнее "подпись" автора посмотреть?
-
В 04.05.2021 в 15:01, krapotkin сказал:
достану, открою на 10.4, как будет время
Прошу прощения за оффтоп, но не нашёл даже упоминаний - что такое Delphi 14.1
-
-
Читаю, диву даюсь!
Что мешало сразу сделать корректным расчёт высоты. Хитрости, уловки, танцы с бубном...
Я использовал :
function TMainForm.DoMeasureText(Canvas: TCanvas; AText: string; Width: single): single;
var
R: TRectF;
begin
R := RectF(0, 0, Width-9, 10000); // Width-54 = font.size x 3
Canvas.MeasureText(R, AText, True, [], TTextAlign.Leading, TTextAlign.Leading);
Result := R.Bottom;
end;Но так и не понял всей премудрости. При шрифте 18, в одну строчку , на один RadioButton она выдаёт 43, 23 , а на какой-то 46,47. Где-то считает одну строчку за две.
-
В 18.03.2021 в 05:30, Slym сказал:
ICtrl.MouseUp(TMouseButton.mbLeft,[],0,0); ICtrl.DoMouseLeave;
ну, меня Mouse смутил слегка... но, чем чёрт не шутит. Мало ли, так положено!
-
4 минуты назад, Slym сказал:
тогда сначала так
даже так попробовал:
if VertScrollBox2.ContainsObject(ICtrl.GetObject) then
мёртво!
-
5 минут назад, Slym сказал:
атак?
Тоже никак. Оно вообще как-то через одно место. И так, и эдак.
А ошибку я бы и не нашел... Вообще впервые этот FMX грызу.
Выбираю 1й пункт, 3-м скролю и он же выделяется...
-
В 18.03.2021 в 05:30, Slym сказал:
procedure VertScrollBox2OnViewportPositionChange
Без изменений.
-
14 часов назад, krapotkin сказал:
3) "Гибридный": всегда использовать RB по порядку. В первом - первый вопрос, во втором второй и т.д. Лишние снизу - прятать
Так вроде в таком порядке они и используются. RB1 - 2 поле БД (1й ответ), в RB2 - 3 поле БД (2й ответ) и т.д. Они заполняются корректно в соответствии, а шатаются по Скроллу, как пьяные матросы.
И порядок вроде бы логичный: они же все объявлены как Visible = True. Есть поле 2 - нарисовали, есть поле 3 - нарисовали ... есть поле 7 - нарисовали.
Я понимаю, если, к примеру нет поля 4, то 3-го Button-a нет и на его место встаёт 4-й Button.
-
Если честно, я не до конца понял, что к чему. И меня мучает вопрос - если операции линейны, почему смещается порядок?
Спросить постеснялся...
-
Доброго дня!
Не пойму, в чём накосячил, ибо Делфил лет 15-20 назад, а тут добрался до FMX...
В приложении на Скролле лежат 8 РадиоКнопок с Align = Top; Visible = False;
Код заполнения линейно, из БД. Если поле БД не пустое - видим, если пустое - не видим.
При работе приложения, они располагаются "по своему усмотрению".
-
1 час назад, krapotkin сказал:
я еще при исходной задаче хотел задать вопрос, а что вы собираетесь делать, когда это перестанет влезать на экран?? но не задал. решил, что всему свое время))
Доброго дня!
Если честно, я сразу предполагал скроллинг, ибо на PC задачу реализовал ещё в конце прошлого года. Пока на больничном, решил реализовать её для мобильной платформы, благо логика вся отлажена. Естественно, не сталкиваясь ранее с FMX, не ожидал столько нерешённых проблем непосредственно с компонентами. Читая ветки, вижу, что множество вопросов возникали лет 5 назад, а воз, как говорится и ныне там. И многое актуально для дня сегодняшнего.
-
В 17.04.2018 в 08:30, krapotkin сказал:
у каждого компонента есть BoundsRect. Нужно просто сравнить, не попадает ли XY в этот rect .
Согласитесь, что это не корректное решение? У меня на ScrollBox некуда пальцем ткнуть, что бы не задеть BoundRect. И при скроллинге, естественно отжимается RadioButton ( а их 4 в примере). Т.е. вопрос остаётся открытым и по сей день?
Кстати, поймал себя на мысли, что лет 5 назад такая проблема была в браузерах. При пролистывании "срабатывали" ссылки на страницы. Сейчас подобного не встречаю. Так каким методом решить эту проблему?
-
В общем, сам спросил - сам ответил.
Нашёл некий пример, проверил - работает.Delphi 1 2 3 4 5 6 7 8 9 10 11 12
var r: TRectF; s: string; begin RadioButton1.Canvas.Font.Size := RadioButton1.TextSettings.Font.Size; r := RectF(0, 0, RadioButton1.Size.Width-24, 10000); // не понял, что за 10000, но ни на что не повлияло s := FDQuery1.FieldByName('ANS1').AsString; // строчная переменная, в моём случае - текст из БД RadioButton1.Canvas.MeasureText(r, s, True, [], TTextAlign.Leading, TTextAlign.Leading); RadioButton1.Size.Height := r.Bottom; RadioButton1.Text := s; end
Возможно, кому-то должно пригодиться.
-
Доброго дня!
Для вывода вариантов ответов на вопрос, в 6 шт. RadioBatton выводятся ответы из БД.
Длина компонент фиксированная, а вот что делать с высотой? Ответы могут быть как в одно-два слова, так и в 7-10 предложений. Намёков хоть на какой-то AutoSize не нашёл.
В итоге, текст центруется обрезаясь сверху и снизу.
FMX: Скроллинг и нажатия
в TScrollBox
Опубликовано
Супер!