Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.04.2009, 18:49   #1
dani92
Форумчанин
 
Аватар для dani92
 
Регистрация: 17.02.2009
Сообщений: 132
Вопрос Вопрос по Alpha Skins

Пишу программу, при этом использую поддержку скинов. Как можно сохранить активный скин в ини файлах???
Использую компонент Alpha Skin
Чат по локальной сети http://fmchat.ucoz.kz - протестируйте плиз)))
а так delphi эта лучшая система программирования
dani92 вне форума Ответить с цитированием
Старый 15.04.2009, 20:49   #2
Gorychev
Участник клуба
 
Аватар для Gorychev
 
Регистрация: 08.03.2008
Сообщений: 1,537
По умолчанию

У вас в проге есть опция выбора одного из скинов, и вы хотите после того как юзер выберет один из скинов, чтобы этот же скин подгружался при повторном запуске проги? А настройки сохранить в ини-файле, так?

Создайте папку Skins в папке с вашей прогой и накидайте туда файлы скинов (*.asz)

сохраняем:
Код:
var
  Iniset: tinifile;
begin
  if opendialog1.Execute then begin
  // подключаем скин
    sSkinManager1.Active := false;
    sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + '\Skins\';
    sSkinManager1.SkinName := copy(ExtractFileName(opendialog1.FileName), 1, length(ExtractFileName(opendialog1.FileName)) - 4);
    sSkinManager1.Active := true;

  //сохраняем
    Iniset := Tinifile.Create(Extractfilepath(application.exename) + '\setting.ini'); ;
    try
      iniset.WriteString('SKIN', 'Curent', sSkinManager1.SkinName);
    finally
      IniSet.Free;
    end;
  end;
end;
загружаем:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var iniset: tinifile; sScin: string;
begin
  Iniset := Tinifile.Create(Extractfilepath(application.exename) + '\setting.ini'); 
  try
    sScin := iniset.ReadString('SKIN', 'Curent', 'тут пишите значение скрипта по умолчанию');
  finally
    IniSet.Free;
  end;

  if fileExists(ExtractFilePath(Application.ExeName) + '\Skins\' + sScin + '.asz') then begin
    sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + '\Skins';
    sSkinManager1.SkinName := sScin;
    sSkinManager1.Active := true;
  end
  else sSkinManager1.Active := false;
emd;
не забудьте подключить Uses inifiles;
Gorychev вне форума Ответить с цитированием
Старый 16.04.2009, 13:31   #3
dani92
Форумчанин
 
Аватар для dani92
 
Регистрация: 17.02.2009
Сообщений: 132
Подмигивание Ответ

У меня просто скины идут как внутренние, мне надо чтобы имя скина загружалось из внутренних скинов
Вот код, который я нашел в другой программе из Ini файлов
Код HTML:
[General]
SkinEnable=1
SkinActive=BlueGauze (внутренний)
SkinHUE=0
SkinSaturation=0
мне нужно сделать так же.

Спасибо за помощь!!!
Чат по локальной сети http://fmchat.ucoz.kz - протестируйте плиз)))
а так delphi эта лучшая система программирования
dani92 вне форума Ответить с цитированием
Старый 16.04.2009, 13:47   #4
dani92
Форумчанин
 
Аватар для dani92
 
Регистрация: 17.02.2009
Сообщений: 132
По умолчанию

Всем спасибо, я решил свою проьлему, тема закрыта!!!
Чат по локальной сети http://fmchat.ucoz.kz - протестируйте плиз)))
а так delphi эта лучшая система программирования
dani92 вне форума Ответить с цитированием
Старый 13.12.2009, 09:33   #5
Joystik
Пользователь
 
Регистрация: 02.09.2009
Сообщений: 18
По умолчанию

Цитата:
Сообщение от Gorychev Посмотреть сообщение
У вас в проге есть опция выбора одного из скинов, и вы хотите после того как юзер выберет один из скинов, чтобы этот же скин подгружался при повторном запуске проги? А настройки сохранить в ини-файле, так?

Создайте папку Skins в папке с вашей прогой и накидайте туда файлы скинов (*.asz)

сохраняем:
Код:
var
  Iniset: tinifile;
begin
  if opendialog1.Execute then begin
  // подключаем скин
    sSkinManager1.Active := false;
    sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + '\Skins\';
    sSkinManager1.SkinName := copy(ExtractFileName(opendialog1.FileName), 1, length(ExtractFileName(opendialog1.FileName)) - 4);
    sSkinManager1.Active := true;

  //сохраняем
    Iniset := Tinifile.Create(Extractfilepath(application.exename) + '\setting.ini'); ;
    try
      iniset.WriteString('SKIN', 'Curent', sSkinManager1.SkinName);
    finally
      IniSet.Free;
    end;
  end;
end;
загружаем:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var iniset: tinifile; sScin: string;
begin
  Iniset := Tinifile.Create(Extractfilepath(application.exename) + '\setting.ini'); 
  try
    sScin := iniset.ReadString('SKIN', 'Curent', 'тут пишите значение скрипта по умолчанию');
  finally
    IniSet.Free;
  end;

  if fileExists(ExtractFilePath(Application.ExeName) + '\Skins\' + sScin + '.asz') then begin
    sSkinManager1.SkinDirectory := ExtractFilePath(Application.ExeName) + '\Skins';
    sSkinManager1.SkinName := sScin;
    sSkinManager1.Active := true;
  end
  else sSkinManager1.Active := false;
emd;
не забудьте подключить Uses inifiles;
sScin := iniset.ReadString('SKIN', 'Curent', 'тут пишите значение скрипта по умолчанию'); - а что за скрипт?
Joystik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Alpha skins dolphin705 Компоненты Delphi 36 27.12.2010 11:10
Cos(alpha) на СИ++ Рустам Помощь студентам 7 23.11.2008 15:30
Alpha Controls v3.56 Михаил Юрьевич Компоненты Delphi 3 01.05.2008 15:52