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

neo

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

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

  • Посещение

Весь контент neo

  1. это если файл просто текстовый... а у меня там сначала идёт размер строки... у меня в ключевой файл пишется несколько параметров типа IMEI итд
  2. ну да =) вот так вызываю.. edit1.text:=StringOf(LoadData); просто размер кажется большим из за того что каждую часть разнёс по функциям/процедурам тк они используются ещё и для других целей если ты умеешь делать это одной строкой то можешь поделится =)
  3. строку в файл сохраняю вот так procedure WriteStreamStr(Stream: TStream; Str: string); var StrLen: Integer; begin StrLen:=Length(Str); Stream.WriteBuffer(StrLen,SizeOf(Integer)); if StrLen>0 then Stream.Write(Str[1], StrLen); end; procedure SaveData(Info: String); var Stream: TMemoryStream; begin Stream:= TMemoryStream.Create; try Stream.Seek(0,soFromBeginning); WriteStreamStr(Stream,Info); Stream.SaveToFile('access.key'); finally Stream.Free; end; end;
  4. Привет! народ чего то не получается под андройдом из файла получить строку в нужной кодировке... вот так получаю строку function ReadStreamStr(Stream: TStream): String; var StrLen: Integer; begin Result:=''; Stream.ReadBuffer(StrLen,SizeOf(Integer)); SetLength(Result,StrLen); Stream.Read(Result[1],StrLen); end; function LoadData: String; var Stream: TMemoryStream; begin Stream:= TMemoryStream.Create; try Stream.LoadFromFile(TPath.GetDocumentsPath + PathDelim +'access.key'); Stream.Seek(0,soFromBeginning); Result:=ReadStreamStr(Stream); finally Stream.Free; end; end; в LoadData строка далее декодирую её function StringOf(str: String): String; var Bytes: TBytes; begin Bytes := BytesOf(str); if Assigned(Bytes) then Result := TEncoding.ANSI.GetString(Bytes, Low(Bytes), High(Bytes) + 1) else Result := ''; end; но всё равно килиберда получается =(
  5. onsavestate сработало спасибо! =) ото уже хотел каждый раз при изменении сохранять ini
  6. onClose пробовал но для этого нужно в ручную выходить из программы onsavestate не проверял... а когда оно происходит?
  7. Привет! столкнулся с небольшой проблемкой) при закрытии программы сохраняю настройки в Ini файл обычно делаю это на событии OnDestroy но в андройде это не работает если находясь в программе войти в перезагрузку и перезагрузить телефон ничего не сэйвится... и даже если сначала свернуть все приложения и потом перезагрузить... добавление в Hide/Deactive тоже ничего не даёт onClose работает - но для этого нужно в ручную выйти из программы Может кто нибудь знает как это обойти?
  8. Народ а как поменять разрешение получаемой картинки через CameraComponent? по умолчанию получаю очень маленькую картинку... хотелось бы сделать её на весь экран =( добавляю сюда CameraComponent1SampleBufferReady CameraComponent1.Quality := TVideoCaptureQuality.highQuality; image.Width := image.Bitmap.Width; image.Height := image.Bitmap.Height; но ничего не меняется =( походу это можно делать только в XE8 а у меня XE7 и использовать нужно CaptureSetting
  9. Итак вот что получилось //сдвинуть выделенный пункт вверх procedure TForm1.Up1Click(Sender: TObject); begin if Assigned(ListBox1.Selected) and (listbox1.Selected.index>=1) then ListBox1.ItemsExchange( ListBox1.ItemByIndex(listbox1.Selected.index), ListBox1.ItemByIndex(listbox1.Selected.index-1) ); end; //сдвинуть выделенный пункт вниз procedure TForm1.Down2Click(Sender: TObject); var NextItem: Integer; begin if Assigned(ListBox1.Selected) and (listbox1.Selected.index<ListBox1.Items.Count-1) then begin NextItem:=Listbox1.Selected.Index+1; ListBox1.ItemsExchange( ListBox1.ItemByIndex(listbox1.Selected.index), ListBox1.ItemByIndex(listbox1.Selected.index+1) ); Listbox1.ClearSelection; //к сож. нужно добавить ClearSelection и NextItem иначе идёт мультиселект listbox1.ItemIndex:=NextItem; end; end;
  10. ага отлично) самое главное что точно также пытался менять через ItemsExchange но ошибку выдавал.. наверно где-то была тупая опечатка а у ListView как? не знаете? там нету ItemsExchange мне на ум только такая ерунда приходит: Litem:=ListView1.Items.Insert(ListView1.Selected.Index-1); LItem.Text:=listview1.Items.Item[ListView1.Selected.Index].Text; LItem.Detail:=listview1.Items.Item[ListView1.Selected.Index].Detail; Listview1.Items.Delete(ListView1.Selected.Index); это чтоб пункт вверх сдвинуть ну и соответственно вниз то плюс
  11. это не те колонки) проверьте ... просто идёт размещение в две колоны.. а пункты раздельные... и выделение идёт раздельное...субитомов больше нету а наличие я вот так проверяю: if not (Listbox1.Selected=nil) then в ListView переименование легко делается... вот и хотел узнать как в ListBox у меня XE7 в ней точно примеров нет как перемещать пункты... и самое главное в ListView тоже не получается пункты сдвинуть просто например мне в настройках нужно по желанию менять очередность пунктов спасибо что ответили надеюсь подобные темы для начинающих будут развиваться
  12. поддерживаю) тоже интересно как это реализовать
  13. Здравствуйте товарищи знатоки! Недавно решил перейти на Firemonkey чтоб создавать мобильные приложения... но к сожалению обнаружил что работа в нём сильно отличается =( и информации в интернете очень мало... и в дельфи демках тоже подобных примеров нету =( не понимаю как можно узнать информацию если ты не работаешь в большом коллективе программистов у которых есть связь с западными колегами которые участвовали в создании тех или иных компонентов... сейчас я разбираюсь с ListBox и хочу научится делать стандартные вещи.... например сначала я попытался создать 2 колонки как в VCL но оказалось так уже нельзя пол дня шерстил интернет и методом тыка научился делать это через Detail ... ok! =) Add: добавлять пункты научился так LItem:=TListBoxItem.Create(ListBox1) ... ListBox1.AddObject(LItem); Delete: поскольку DeleteSelected больше нет удаляю пункт сл образом ListBox1.Items.Delete(listbox1.Selected.index) но как проверить существует ли item? иначе возникает ошибка когда удаляешь и ничего не выделено Rename: переименовать item не получается =( разве что вставить пункт на место выделенного listbox1.InsertObject(... ,...); а сл удалить Move: поменять позицию у выделенного пункта тоже не получается Подскажите пожалуйста ответы на эти казалось бы простые вопросы! думаю это поможет очень многим начинающим ФаерМанкерам =)
×
×
  • Создать...