Salamandra
Новичок
видимо что то такое было BitmapStyleDesigner.exe
Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
Все верно. Только не откроет он стили для FMX, откроет для VCL.видимо что то такое было BitmapStyleDesigner.exe
ну вот мне что то подобное нужно как раз для FMXВсе верно. Только не откроет он стили для FMX, откроет для VCL.
Так еще раз...ну вот мне что то подобное нужно как раз для FMX
хорошо это я понял. есть такой вопрос тогда - есть у меня такоеТак еще раз...
Нет отдельного редактора стилей для FMX.
Редактировать стили FMX можно только в самой Delphi.
BitmapStyleDesigner может редактировать-открывать только стили для VCL.
Да ты можешь сохранить в этой программе стиль для FMX как .style, но он больше не откроется для редактирования в BitmapStyleDesigner
У вас наверное все RadioButton лежат на одном родителе (подложке).по чему с ним не работает как и с первым вроде же по аналогии не понятно. в лс кинул вам архив
Там по моему нужно создать отдельную ф-ию для проверки, хотя легче спросить у @audiofeel. В фмх он все же разбираетсяхорошо это я понял. есть такой вопрос тогда - есть у меня такое
TObject(ModCheckBox[1].GetObject):
begin
if not ModCheckBox[1].IsChecked then
begin
ModRadioButton[1].SetChecked(True);
ModRadioButton[2].SetChecked(False);
ModRadioButton[3].SetChecked(False);
ModRadioButton[4].SetChecked(False);
end else
begin
ModRadioButton[1].SetChecked(False);
ModRadioButton[2].SetChecked(False);
ModRadioButton[3].SetChecked(False);
ModRadioButton[4].SetChecked(False);
end;
end;
TObject(ModRadioButton[1].GetObject):
ModCheckBox[1].SetChecked(True);
TObject(ModRadioButton[2].GetObject):
ModCheckBox[1].SetChecked(True);
TObject(ModRadioButton[3].GetObject):
ModCheckBox[1].SetChecked(True);
TObject(ModRadioButton[4].GetObject):
ModCheckBox[1].SetChecked(True);
все работает с первым чекбоксом и радио бутонами правильно как нужно . но мне нужно теперь тоже самое сделать и с 32 чекбоксом я добавил его. я все делаю идентично как и у первого и происходит следующее. если я отмечаю чекбокс он живет своей жизнью то есть сам по себе отмечается и снимается а по идее должно быть я выбрал его и с ним отметился и радио бутон. этого не происходит. при этом если я тыкаю радио бутон то он отмечается но когда я с чекбокса снимаю отметку он снимается а радиобутон остается выбранным а должен сниматься вместе с радио бутоном . по чему так не как не пойму что не так. я вам в лс кину может глянете что подскажете а то не могу обнову из за этого сделать. для примера вот так же же с 32 чекбоксом прописал
TObject(ModCheckBox[32].GetObject):
begin
if not ModCheckBox[32].IsChecked then
begin
ModRadioButton[7].SetChecked(True);
ModRadioButton[8].SetChecked(False);
ModRadioButton[9].SetChecked(False);
end else
begin
ModRadioButton[7].SetChecked(False);
ModRadioButton[8].SetChecked(False);
ModRadioButton[9].SetChecked(False);
if then COMCheckBox[32].SetChecked(False);
end;
end;
TObject(ModRadioButton[7].GetObject):
ModCheckBox[32].SetChecked(True);
TObject(ModRadioButton[8].GetObject):
ModCheckBox[32].SetChecked(True);
TObject(ModRadioButton[9].GetObject):
ModCheckBox[32].SetChecked(True);
по чему с ним не работает как и с первым вроде же по аналогии не понятно. в лс кинул вам архив
так там с другим чекбоксом и радио бутоном тоже есть это мне просто еще надо и с 32 сделать как и с первым но есть еще тоже самое и с другим чекбоксом и двумя радио бутонами все говорю работало а щас перестало. радиофилу написал и даже скинул в лс архив . тишина. не первый раз ему пишу от не отзывается по чему то тут еще что то отвечает а в лс прошу помочь нетУ вас наверное все RadioButton лежат на одном родителе (подложке).
RadioButton так не работают. Сколько бы RadioButton у вас бы не было отмечаться должен один.
Что бы каждый RadioButton работал от какого то CheckBox'са, нужно каждый RadioButton ложить на свою подложку.
красиво. я вам в лс написал и материал скинул вы поможете или нет??Нам-вам-тебе нужен такой инсталлятор?
Ты просто вообще не указал какую именно процедуру вызывать при кликекрасиво. я вам в лс написал и материал скинул вы поможете или нет??
группу 3 я создал утром а вот про клик пропустил точно. у первого чекбокса он есть . сейчас попробую. спасибоТы просто вообще не указал какую именно процедуру вызывать при клике
у тебя вообще нет этого = ModCheckBox[32].OnClick(@CommonOnClick);
И в группе чекбоксов нужно другую группу указать.
У тебя сейчас группа номер 2. Укажи хотя бы 3 = ModRadioButton[7].GroupName('Group3');
Нет никакой проблемы. Просто не внимательность.
спасибо большое. добавил что вы сказали и все как часы заработало. впредь буду внимательнее.Ты просто вообще не указал какую именно процедуру вызывать при клике
у тебя вообще нет этого = ModCheckBox[32].OnClick(@CommonOnClick);
И в группе чекбоксов нужно другую группу указать.
У тебя сейчас группа номер 2. Укажи хотя бы 3 = ModRadioButton[7].GroupName('Group3');
Нет никакой проблемы. Просто не внимательность.
Пробуй так. Будем надеется что размеры у чекбокса и радиобутона в стиле фиксированный (Обычно это так). Это нужно изменить для всего что на Page3ScrollBox.Handleaudiofeel здравтсвуйте
такой вопрос - у меня на одной странице довольно большой список компонентов то есть радио бутонов и чекбоксов соответственно количество уже расстояние друг от друга становится больше 900 пикселей и скоро превысит 1000 пикселей . что мне делать в таком случае прописывать дальше например 1005 потом 1030 или это нужно или возможно как то обойти?? если да то подскажите как на примере . а то как то не хочется прописывать такие цифры да и не видел я их не где что бы у кого то так прописано было.
я так конечно щас сделал все работает но правильно ли так делать я не знаю и не уверен. прошу помочь мне с этим разобраться.
а то уже вот так
ModRadioButton[9].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton9'));
ModRadioButton[9].SetBounds(30, 1010, 385, 22);
ModRadioButton[9].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModRadioButton[9].GroupName('Group3');
ModRadioButton[9].OnClick(@CommonOnClick);
ModRadioButton[9].OnMouseEnter(@CommonOnEnter);
ModRadioButton[9].OnMouseLeave(@CommonOnLeave);
ModCheckBox[1].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModCheckBox1'));
ModCheckBox[1].Align(Top);
ModCheckBox[1].Margins(10, 10, 0, 5);
ModCheckBox[1].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModCheckBox[1].OnClick(@CommonOnClick);
ModCheckBox[1].OnMouseEnter(@CommonOnEnter);
ModCheckBox[1].OnMouseLeave(@CommonOnLeave);
ModRadioButton[1].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton1'));
ModRadioButton[1].Align(Top);
ModRadioButton[1].Margins(30, 0, 0, 5);
ModRadioButton[1].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModRadioButton[1].GroupName('Group1');
ModRadioButton[1].OnClick(@CommonOnClick);
ModRadioButton[1].OnMouseEnter(@CommonOnEnter);
ModRadioButton[1].OnMouseLeave(@CommonOnLeave);
ModRadioButton[2].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton2'));
ModRadioButton[2].Align(Top);
ModRadioButton[2].Margins(30, 0, 0, 5);
ModRadioButton[2].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModRadioButton[2].GroupName('Group1');
ModRadioButton[2].OnClick(@CommonOnClick);
ModRadioButton[2].OnMouseEnter(@CommonOnEnter);
ModRadioButton[2].OnMouseLeave(@CommonOnLeave);
ModRadioButton[3].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton3'));
ModRadioButton[3].Align(Top);
ModRadioButton[3].Margins(30, 0, 0, 5);
ModRadioButton[3].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModRadioButton[3].GroupName('Group1');
ModRadioButton[3].OnClick(@CommonOnClick);
ModRadioButton[3].OnMouseEnter(@CommonOnEnter);
ModRadioButton[3].OnMouseLeave(@CommonOnLeave);
ModRadioButton[4].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton4'));
ModRadioButton[4].Align(Top);
ModRadioButton[4].Margins(30, 0, 0, 5);
ModRadioButton[4].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModRadioButton[4].GroupName('Group1');
ModRadioButton[4].OnClick(@CommonOnClick);
ModRadioButton[4].OnMouseEnter(@CommonOnEnter);
ModRadioButton[4].OnMouseLeave(@CommonOnLeave);
Пробуй так. Будем надеется что размеры у чекбокса и радиобутона в стиле фиксированный (Обычно это так). Это нужно изменить для всего что на Page3ScrollBox.Handle
Код:ModCheckBox[1].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModCheckBox1')); ModCheckBox[1].Align(Top); ModCheckBox[1].Margins(10, 10, 0, 5); ModCheckBox[1].FontSetting('{#MyFontName1}', 13, $FFF5F5F5); ModCheckBox[1].OnClick(@CommonOnClick); ModCheckBox[1].OnMouseEnter(@CommonOnEnter); ModCheckBox[1].OnMouseLeave(@CommonOnLeave); ModRadioButton[1].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton1')); ModRadioButton[1].Align(Top); ModRadioButton[1].Margins(30, 0, 0, 5); ModRadioButton[1].FontSetting('{#MyFontName1}', 13, $FFF5F5F5); ModRadioButton[1].GroupName('Group1'); ModRadioButton[1].OnClick(@CommonOnClick); ModRadioButton[1].OnMouseEnter(@CommonOnEnter); ModRadioButton[1].OnMouseLeave(@CommonOnLeave); ModRadioButton[2].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton2')); ModRadioButton[2].Align(Top); ModRadioButton[2].Margins(30, 0, 0, 5); ModRadioButton[2].FontSetting('{#MyFontName1}', 13, $FFF5F5F5); ModRadioButton[2].GroupName('Group1'); ModRadioButton[2].OnClick(@CommonOnClick); ModRadioButton[2].OnMouseEnter(@CommonOnEnter); ModRadioButton[2].OnMouseLeave(@CommonOnLeave); ModRadioButton[3].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton3')); ModRadioButton[3].Align(Top); ModRadioButton[3].Margins(30, 0, 0, 5); ModRadioButton[3].FontSetting('{#MyFontName1}', 13, $FFF5F5F5); ModRadioButton[3].GroupName('Group1'); ModRadioButton[3].OnClick(@CommonOnClick); ModRadioButton[3].OnMouseEnter(@CommonOnEnter); ModRadioButton[3].OnMouseLeave(@CommonOnLeave); ModRadioButton[4].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton4')); ModRadioButton[4].Align(Top); ModRadioButton[4].Margins(30, 0, 0, 5); ModRadioButton[4].FontSetting('{#MyFontName1}', 13, $FFF5F5F5); ModRadioButton[4].GroupName('Group1'); ModRadioButton[4].OnClick(@CommonOnClick); ModRadioButton[4].OnMouseEnter(@CommonOnEnter); ModRadioButton[4].OnMouseLeave(@CommonOnLeave);
Делай така вот в этом случае как нужно прописать. тут же еще символ динамика звукового сделан. как тут нужно прописывать что бы все правильно шло??
ModCheckBox[7].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModCheckBox7'));
ModCheckBox[7].Align(Top);
ModCheckBox[7].Margins(10, 0, 0, 5);
ModCheckBox[7].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModCheckBox[7].OnClick(@CommonOnClick);
ModCheckBox[7].OnMouseEnter(@CommonOnEnter);
ModCheckBox[7].OnMouseLeave(@CommonOnLeave);
ModRadioButton[5].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton5'));
ModRadioButton[5].Align(Top);
ModRadioButton[5].Margins(30, 0, 0, 5);
ModRadioButton[5].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModRadioButton[5].GroupName('Group2');
ModRadioButton[5].OnClick(@CommonOnClick);
ModRadioButton[5].OnMouseEnter(@CommonOnEnter);
ModRadioButton[5].OnMouseLeave(@CommonOnLeave);
/////////////SoundLbl//////////////////////////////
SoundLbl[1].FCreate(Page3ScrollBox.Handle, #$0102);
SoundLbl[1].FontSetting('{#MyFontName1}', 18, FMXColorSetOpacity($FFFFFFFF, 0.8));
SoundLbl[1].TextSetting(False, txLeading, txLeading);
SoundLbl[1].AutoSize(True);
SoundLbl[1].Position(268, 285);
ModRadioButton[6].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModRadioButton6'));
ModRadioButton[6].SetBounds(30, 310, 385, 22);
ModRadioButton[6].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModRadioButton[6].GroupName('Group2');
ModRadioButton[6].OnClick(@CommonOnClick);
ModRadioButton[6].OnMouseEnter(@CommonOnEnter);
ModRadioButton[6].OnMouseLeave(@CommonOnLeave);
/////////////SoundLbl//////////////////////////////
SoundLbl[2].FCreate(Page3ScrollBox.Handle, #$0102);
SoundLbl[2].FontSetting('{#MyFontName1}', 18, FMXColorSetOpacity($FFFFFFFF, 0.8));
SoundLbl[2].TextSetting(False, txLeading, txLeading);
SoundLbl[2].AutoSize(True);
SoundLbl[2].Position(268, 310);
ModCheckBox[8].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModCheckBox8'));
ModCheckBox[8].SetBounds(10, 335, 385, 22);
ModCheckBox[8].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModCheckBox[8].OnClick(@CommonOnClick);
ModCheckBox[8].OnMouseEnter(@CommonOnEnter);
ModCheckBox[8].OnMouseLeave(@CommonOnLeave);
/////////////SoundLbl//////////////////////////////
SoundLbl[3].FCreate(Page3ScrollBox.Handle, #$0102);
SoundLbl[3].FontSetting('{#MyFontName1}', 18, FMXColorSetOpacity($FFFFFFFF, 0.8));
SoundLbl[3].TextSetting(False, txLeading, txLeading);
SoundLbl[3].AutoSize(True);
SoundLbl[3].Position(230, 335);
ModCheckBox[9].FCreate(Page3ScrollBox.Handle, False, CustomMessage('ModCheckBox9'));
ModCheckBox[9].SetBounds(10, 360, 385, 22);
ModCheckBox[9].FontSetting('{#MyFontName1}', 13, $FFF5F5F5);
ModCheckBox[9].OnClick(@CommonOnClick);
ModCheckBox[9].OnMouseEnter(@CommonOnEnter);
ModCheckBox[9].OnMouseLeave(@CommonOnLeave);
/////////////SoundLbl//////////////////////////////
SoundLbl[4].FCreate(Page3ScrollBox.Handle, #$0102);
SoundLbl[4].FontSetting('{#MyFontName1}', 18, FMXColorSetOpacity($FFFFFFFF, 0.8));
SoundLbl[4].TextSetting(False, txLeading, txLeading);
SoundLbl[4].AutoSize(True);
SoundLbl[4].Position(230, 360);
SoundLbl[1].FCreate(ModRadioButton[5].Handle, #$E767);
SoundLbl[1].Align(Right);
SoundLbl[1].FontSetting('Segoe MDL2 Assets', 18, FMXColorSetOpacity($FFFFFFFF, 0.8));
SoundLbl[1].TextSetting(False, txCenter, txCenter);
а Segoe - это название я так понимаю шрифта. вопрос а можно как то подставить вот так SoundLbl[1].FontSetting('{#MyFontName1}', 18, FMXColorSetOpacity($FFFFFFFF, 0.8)); ??? я не хочу допустим название шрифта задовать а именно так праписать и что бы он из него нужный символ брал . сам то шрифт в шапке прописан . будет так работать??? или как то надо сконфигурировать эту строчку по другому что бы вставить через это {#MyFontName1}?? и да название шрифта у меня такое Play и cbvdjk #0102Делай так
code_language.pascal:SoundLbl[1].FCreate(ModRadioButton[5].Handle, #$E767); SoundLbl[1].Align(Right); SoundLbl[1].FontSetting('Segoe MDL2 Assets', 18, FMXColorSetOpacity($FFFFFFFF, 0.8)); SoundLbl[1].TextSetting(False, txCenter, txCenter);
Что тут происходит?
SoundLbl[1].Align(Right); = Размещаем лейбл прямо на той радиокнопке где хотим разместить символ "Громкоговоритель", задаем ей Align(Right), что бы она прижалась вправо
SoundLbl[1].TextSetting(False, txCenter, txCenter); = Выравнивание текста делаем и горизонтально и вертикально по центру
Так как у лейбла по умолчанию HitTest(False) лейбл пропустит клики.
такую ошибку или предупреждение выдаетДелай так
code_language.pascal:SoundLbl[1].FCreate(ModRadioButton[5].Handle, #$E767); SoundLbl[1].Align(Right); SoundLbl[1].FontSetting('Segoe MDL2 Assets', 18, FMXColorSetOpacity($FFFFFFFF, 0.8)); SoundLbl[1].TextSetting(False, txCenter, txCenter);
Что тут происходит?
SoundLbl[1].Align(Right); = Размещаем лейбл прямо на той радиокнопке где хотим разместить символ "Громкоговоритель", задаем ей Align(Right), что бы она прижалась вправо
SoundLbl[1].TextSetting(False, txCenter, txCenter); = Выравнивание текста делаем и горизонтально и вертикально по центру
Так как у лейбла по умолчанию HitTest(False) лейбл пропустит клики.
