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

david_yusupov

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

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

  • Посещение

Посетители профиля

6 487 просмотров профиля

Достижения david_yusupov

  1. Спасибо, буду по возможности исправлять
  2. Просто у меня уже не мало коду на писано было и под windows – работе, и когда его на мобильный переносить стал – тут приехал
  3. david_yusupov

    string

    При разработки мобильного приложение выяснил, что индекса строкового типа данных, по символно, под Android и Windows – разная Android S[0],S[1],S[…],S[L-1] Windows S[1],S[2],S[…],S[L] Это как-то можно отрегулировать директивами компилятора, что бы одинаково
  4. Вопрос, как можно установить приделы вывода графика по оси X и Y? На форму располагаю Два TPath, для вы вода картинки и нужно, что бы они были одинаковыми в координатных осях
  5. david_yusupov

    Компилятор

    К понимаю, если среда может работать в разных платформах (или разных OS). Значит можно написать совой компилятор или транслятор в другой язык (JavaScript), а визуальных компонентов FMX - использовать один из framework JavaScript. Где можно почерпнуть знания
  6. TTestFrame = class(TFrame) Rectangle: TRectangle; private end; Создаем объект: TestRectangle := TRectangle.Create; TestRectangle.Parent := Rectangle; Создаем его так что одна область находится за границами Rectangle TestRectangle.Position.X := -20; TestRectangle.Position.Y := -20; И она видна, не обрезается ее видимость ЗЫ Как сделать, так что обрезалась, а тем более, когда выводим TText, тоже не обрезается
  7. Расположил несколько, TStringGrid - в контейнере TVertScrollBox. Прорисовки заголовка возникает сообщение ошибке Когда на TVertScrollBox - располагается один TStringGrid - то проблем нет, а когда два TStringGrid - по периодически возникает ошибка ... не подскажите как ее решить, или как ее поместить в исключение, что игнорировать // ----------------------------------------------------------------------------------------------------------------- Немного поэкспериментировал Создал - TVertScrollBox – отдельно разместил два TStringGrid – все нормально Могу предположить, что проблема в наследование TCustomDiagnosticFrame = (TFrame, ITypeFrame) TDiagnosticIS = class(TCustomDiagnosticFrame) Размещаю на TDiagnosticIS на TVertScrollBox И тут и возникает проблема у TStringGrid test.zip
  8. У меня задача нужно в приложение использоваться jar – файл (программа пишется под windows). В исходниках студи есть Androidapi.Jni – как понимаю это JNI – под андройд, вопрос, как его можно переделать под Windows.Jni – (если это вообще возможности). Если описание JNI – хоть пуская с++, что из своего приложение запускать JVM и выполнять файл jar (библиотеку)
  9. david_yusupov

    Прозрачность

    Как сделать TreeView — прозрачный фон, так что бы видны Item?
  10. Вопрос очень прост, как убить запущенный поток не дожидаясь его завершение. Пример: procedure TBufferThread.Execute; begin while not Self.Terminated do begin Sleep(10000); end; end; Используя ReportMemoryLeaksOnShutdown показывает, что поток жив, после закрытие программы? PS Поток так же жив после вызова процедуры TThread.Terminate (После того как заглянул вовнутрь понял почему, и поэтому возник вопрос, как убить поток?)
  11. Было написано костыль, для быстрого решение... то так идея с отдельным потом, мне нравится. Так как нет других решений. Прилегаю файл, как и просили. procedure TBlocksFrame.SetInitializationLattice; var i, j: Integer; xRectangle: TLatticeRectangle; xHeight, xWidth: Single; begin xHeight := Self.Height/ROW_COUNT_SIZE; xWidth := Self.Width/COL_COUNT_SIZE; if (xHeight > 0) and (xWidth > 0) then begin for i := 0 to ROW_COUNT_SIZE - 1 do for j := 0 to COL_COUNT_SIZE - 1 do begin xRectangle := TLatticeRectangle.Create(Self); SetPostionRectangle(xRectangle, j * xWidth + 1.25, i * xHeight + 1.25, xHeight - 2.5, xWidth - 2.5); xRectangle.Row := i; xRectangle.Col := j; xRectangle.Parent := Self; xRectangle.OnEnter := RectangleOnEnter; xRectangle.OnMouseDown := RectangleOnMouseDown; xRectangle.OnMouseMove := RectangleOnMouseMove; xRectangle.OnMouseUp := RectangleOnMouseUp; FLatticeles.Add(xRectangle); end; end; end; procedure TBlocksFrame.SetUpDatesLattice; var i, j, xIndex: Integer; xLattice: TLatticeRectangle; xHeight, xWidth: Single; begin xHeight := Self.Height/ROW_COUNT_SIZE; xWidth := Self.Width/COL_COUNT_SIZE; if (xHeight > 0) and (xWidth > 0) then begin for i := 0 to ROW_COUNT_SIZE - 1 do for j := 0 to COL_COUNT_SIZE - 1 do begin xIndex := i * COL_COUNT_SIZE + j; xLattice := FLatticeles[xIndex]; if Assigned(xLattice) then begin SetPostionRectangle(xLattice, j * xWidth + 1.25, i * xHeight + 1.25, xHeight - 2.5, xWidth - 2.5); end; end; end; end; // сейчас так procedure TBlocksFrame.TimerTimer(Sender: TObject); begin if (FSelfHeight = 0) and (FSelfWidth = 0) then begin FSelfHeight := Self.Height; FSelfWidth := Self.Width; Self.SetInitializationLattice; end else begin if (FSelfHeight <> Self.Height) or (FSelfWidth <> Self.Width) then begin FSelfHeight := Self.Height; FSelfWidth := Self.Width; if FLatticeles.Count = 0 then Self.SetInitializationLattice else begin SetUpDatesLattice; SetUpDatesBlock; end; end; end; end; // было так procedure TBlocksFrame.Resize; begin inherited Resize; if (FSelfHeight = 0) and (FSelfWidth = 0) then begin FSelfHeight := Self.Height; FSelfWidth := Self.Width; Self.SetInitializationLattice; end else begin if (FSelfHeight <> Self.Height) or (FSelfWidth <> Self.Width) then begin FSelfHeight := Self.Height; FSelfWidth := Self.Width; if FLatticeles.Count = 0 then Self.SetInitializationLattice else begin SetUpDatesLattice; SetUpDatesBlock; end; end; end; end; block.zip
×
×
  • Создать...