FMXInno

DLL FMXInno 2024 May 11

Нет прав для скачивания

xDarkSTALKERx

Новичок
О боже. если 36 лет по твоему и ты уже "плачешь" что старый, какая тут старость вообще? Когда будет 55 там уже и можно сказать "СТАРОСТЬ" или ты думаешь что тут на сайте одни малолетки моложе тебя и можно всех своим возрастом на слабо брать, аля "я старый мне помогут"?

P.S. Мил человек, что в старых скриптах что в новых почти нет разницы за исключением плагина распаковки, раньше и сейчас даже использовали ISDone, теперь появился ISArcEx который уже вшит в FMXInno. А вы вообще использовали стандартный метод сжатия который изначально есть в Inno setup, указав путь к игре, он по сей день работает и его можно использовать, в примерах к библиотеке FMXInno все есть. Удачи!


P.P.S. Вот эти два примера к стандартной распаковке без FreeArc

Посмотреть вложение 8688
Да это то я все еще вчера понял и разобрался, и игра у меня скомпилирована и все остальное, я не врублюсь как свой инсталлятор(ну который я замастрячил , совместить - в старой версии, было как то попроще...
 

MarsBar

Новичок
Да это то я все еще вчера понял и разобрался, и игра у меня скомпилирована и все остальное, я не врублюсь как свой инсталлятор(ну который я замастрячил , совместить - в старой версии, было как то попроще...
Да нет никакой старой версии алло дядя. Есть Inno Setup и она по прежнему так-же сжимает все только по дефолту без всяких дополнений. Только вот ты пытаешься взять и привязать к ней FMXInno - стороннюю библиотеку, а там надо для начала разобраться как и что работает, а потом только лезть. За тебя делать ничего никто не будет, открой пример который я выше скинул под пометкой "1_Original_Inno_Example-mod.iss" и изучай.
 

xDarkSTALKERx

Новичок
О боже. если 36 лет по твоему и ты уже "плачешь" что старый, какая тут старость вообще? Когда будет 55 там уже и можно сказать "СТАРОСТЬ" или ты думаешь что тут на сайте одни малолетки моложе тебя и можно всех своим возрастом на слабо брать, аля "я старый мне помогут"?

P.S. Мил человек, что в старых скриптах что в новых почти нет разницы за исключением плагина распаковки, раньше и сейчас даже использовали ISDone, теперь появился ISArcEx который уже вшит в FMXInno. А вы вообще использовали стандартный метод сжатия который изначально есть в Inno setup, указав путь к игре, он по сей день работает и его можно использовать, в примерах к библиотеке FMXInno все есть. Удачи!


P.P.S. Вот эти два примера к стандартной распаковке без FreeArc

Посмотреть вложение 8688
Да все это понятно, что там по другому.... я наверно не так изъясняюсь... c инсталлятором я разобрался все там понятно, как и что добавить, я не вдуплю как именно скомпилировать игру в Data.bin) Еще раз скажу уже без юмора, у меня нулевое знание английского и программами без русификации пользоваться тяжеловато
 

xDarkSTALKERx

Новичок
- Что делать если нужного по стилю и внешнему виду FSwitch не найти?
- "Рисовать" самому.
нам понадобятся FRectangle и FCircle.
Посмотреть вложение 8691
Спс но я уже нашел, который мне понравился, за исключением всяких кнопочек.... не знаешь есть может какие то архивы с кнопочками и стрелочками, ярлыками корзинок... или можно поставить, на пример иконку скажем корзины с темы оформления Windows
 

xDarkSTALKERx

Новичок
Вы же понимаете что элементано чтобы создать инсталлятор нужно понимание чего вы хотите. Там к примеру +- 10 а то и 20 разновидностей форм. Fluent формы, обычные классическе формы, формы в виде картинки и так далее, только по одной из них можно несколько разных вариаций использования сделать.

И тут вы приходите и говорите, хочу крутые инсталляторы делать.
Спасибо тебе так скажем за пенки, все у меня получилось))) Все абсолютно.... Кроме одной маленькой детали, не как не получается нужную иконку вывести на рабочий стол, не не так выразился, нужную иконку поставить в экзешник, что бы при установке именно она была. Подскажи пожалуйста. Если не трудно) еще раз спасибо за пинок под зад))) до всего допер и все сделал
 

audiofeel

Старожил
- Что делать если нужного по стилю и внешнему виду FSwitch не найти?
- "Рисовать" самому.
нам понадобятся FRectangle и FCircle.
Посмотреть вложение 8691
В дополнение к посту...
- С этим все понятно, Но мне нужен оригинальный чекбокс, который я не могу найти в стилях, как быть? Рисовать не охота и не умею.
- Окей, то же самое, за фрейм мы берем наш любимый FRectangle, за галочку берем FRadiantCheck.
Пример есть в инсталляторе Vesta
 

audiofeel

Старожил
То же самое с RadiButton. Если не устраивает RadioButton из стилей то делаем его сами
Нам понадобится FRadiantCircle и FRadiantRing или FCircle
Код:
var
  LangRadioBtnFrame: array [1..6] of  FRadiantCircle;
  LangRadioBtn: array [1..6] of  FRadiantRing;

procedure FMXInnoInit;
var
  i: Integer;
begin
  for i:= 1 to 6 do
  begin
    LangRadioBtnFrame[i]:= InitRadiantCircleHandle;
    LangRadioBtn[i]:= InitRadiantRingHandle;
  end;
end;

procedure CommonOnClick(Sender: TObject);
begin
  case Sender of

    TObject(LangRadioBtnFrame[1].GetObject), TObject(LangRadioBtnLbl[1].GetObject):
    begin
      if not LangRadioBtn[1].IsVisible then
      begin
        LangRadioBtn[1].Visible(True);
        LangRadioBtn[2].Visible(False);
        LangRadioBtn[3].Visible(False);
        LangRadioBtn[4].Visible(False);
        LangRadioBtn[5].Visible(False);
        LangRadioBtn[6].Visible(False);
        WizardLang:= 'Eng' + '_';
      end;
        UpdateSetupLanguage;
    end;

  end;
end;

procedure CommonOnEnter(Sender: TObject);
begin
  case Sender of

    TObject(LangRadioBtnFrame[1].GetObject), TObject(LangRadioBtnLbl[1].GetObject):
      LangRadioBtnFrame[1].StrokeColor($FFA9A9A9);

  end;
end;

procedure CommonOnLeave(Sender: TObject);
begin
  case Sender of

    TObject(LangRadioBtnFrame[1].GetObject), TObject(LangRadioBtnLbl[1].GetObject):
      LangRadioBtnFrame[1].StrokeColor($FF696969);

  end;
end;

procedure FMXDesigning;
begin

  LangRadioBtnFrame[1].FCreate(LangForm.Handle);
  LangRadioBtnFrame[1].SetBounds(30, 72, 20, 20);
  LangRadioBtnFrame[1].FillColor($00000000);
  LangRadioBtnFrame[1].StrokeColor($FF696969);
  LangRadioBtnFrame[1].StrokeSetting(1, scFlat, sdSolid, sjMiter);
  LangRadioBtnFrame[1].OnMouseEnter(@CommonOnEnter);
  LangRadioBtnFrame[1].OnMouseLeave(@CommonOnLeave);
  LangRadioBtnFrame[1].OnClick(@CommonOnClick);
  LangRadioBtn[1].FCreate(LangRadioBtnFrame[1].Handle);
  LangRadioBtn[1].Align(Center);
  LangRadioBtn[1].Height(12);
  LangRadioBtn[1].Width(12);
  LangRadioBtn[1].FillColor($FF148EFF);
  LangRadioBtn[1].StrokeColor($FF148EFF);
  LangRadioBtn[1].RingSize(5, 0, rduPixels);
  LangRadioBtn[1].Visible(True);
  LangRadioBtn[1].HitTest(False);

end;

RadioButton.gif
Так же можно сделать кнопки - "закрыть, выход"
Нам понадобится FRadiantX (Пример есть в инсталляторе Инсталлер в стиле AMD Radeon
1.png
 
Последнее редактирование:

audiofeel

Старожил
- Я наконец то подобрал себе в инсталлятор файл стиля .Style, но при его добавлении форма стала какой то странной, исчезло Rounded, как буд то BorderStyle = bsNone.
- Открываем наш стиль в BitmapStyleDesigner.exe (Нужно что бы стиль был в двух "форматах" - .vsf и .Style) и удаляем все как на снимке (у нас должно получится - Form>Image>Client) , сохраняем стиль с расширением .Style
1.png
Как должно быть
2.png
 

Хамик

Старожил
То же самое с RadiButton. Если не устраивает RadioButton из стилей то делаем его сами
Нам понадобится FRadiantCircle и FRadiantRing или FCircle
Код:
var
  LangRadioBtnFrame: array [1..6] of  FRadiantCircle;
  LangRadioBtn: array [1..6] of  FRadiantRing;

procedure FMXInnoInit;
var
  i: Integer;
begin
  for i:= 1 to 6 do
  begin
    LangRadioBtnFrame[i]:= InitRadiantCircleHandle;
    LangRadioBtn[i]:= InitRadiantRingHandle;
  end;
end;

procedure CommonOnClick(Sender: TObject);
begin
  case Sender of

    TObject(LangRadioBtnFrame[1].GetObject), TObject(LangRadioBtnLbl[1].GetObject):
    begin
      if not LangRadioBtn[1].IsVisible then
      begin
        LangRadioBtn[1].Visible(True);
        LangRadioBtn[2].Visible(False);
        LangRadioBtn[3].Visible(False);
        LangRadioBtn[4].Visible(False);
        LangRadioBtn[5].Visible(False);
        LangRadioBtn[6].Visible(False);
        WizardLang:= 'Eng' + '_';
      end;
        UpdateSetupLanguage;
    end;

  end;
end;

procedure CommonOnEnter(Sender: TObject);
begin
  case Sender of

    TObject(LangRadioBtnFrame[1].GetObject), TObject(LangRadioBtnLbl[1].GetObject):
      LangRadioBtnFrame[1].StrokeColor($FFA9A9A9);

  end;
end;

procedure CommonOnLeave(Sender: TObject);
begin
  case Sender of

    TObject(LangRadioBtnFrame[1].GetObject), TObject(LangRadioBtnLbl[1].GetObject):
      LangRadioBtnFrame[1].StrokeColor($FF696969);

  end;
end;

procedure FMXDesigning;
begin

  LangRadioBtnFrame[1].FCreate(LangForm.Handle);
  LangRadioBtnFrame[1].SetBounds(30, 72, 20, 20);
  LangRadioBtnFrame[1].FillColor($00000000);
  LangRadioBtnFrame[1].StrokeColor($FF696969);
  LangRadioBtnFrame[1].StrokeSetting(1, scFlat, sdSolid, sjMiter);
  LangRadioBtnFrame[1].OnMouseEnter(@CommonOnEnter);
  LangRadioBtnFrame[1].OnMouseLeave(@CommonOnLeave);
  LangRadioBtnFrame[1].OnClick(@CommonOnClick);
  LangRadioBtn[1].FCreate(LangRadioBtnFrame[1].Handle);
  LangRadioBtn[1].Align(Center);
  LangRadioBtn[1].Height(12);
  LangRadioBtn[1].Width(12);
  LangRadioBtn[1].FillColor($FF148EFF);
  LangRadioBtn[1].StrokeColor($FF148EFF);
  LangRadioBtn[1].RingSize(5, 0, rduPixels);
  LangRadioBtn[1].Visible(True);
  LangRadioBtn[1].HitTest(False);

end;

Посмотреть вложение 8695
Так же можно сделать кнопки - "закрыть, выход"
Нам понадобится FRadiantX (Пример есть в инсталляторе Инсталлер в стиле AMD Radeon
Посмотреть вложение 8696
Привет. Есть полноценный пример того что на гифке?
 
Сверху