Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Вниз

RadioGroup   Найти похожие ветки 

 
Chort ©   (2006-07-16 09:42) [0]

Здравствуйте! Решил сделать формочку для настройки на главной форме моей проги размера шрифта надписей кнопок программы.Поставил на формочку RadioGroup2, настроил 7 Items-ов
,В ONClick написал

procedure TFontForm.RadioGroup2Click(Sender: TObject);
begin
case Radiogroup2.ItemIndex of
0: Form1.IzdSpeedButton1.Font.Size:=10;
0: Form1.CloseSpeedButton1.Font.Size:=10;
0: Form1.ManufSpeedButton4.Font.Size:=10;
1: Form1.IzdSpeedButton1.Font.Size:=12;
1: Form1.CloseSpeedButton1.Font.Size:=12;
1: Form1.ManufSpeedButton4.Font.Size:=12;
2: Form1.IzdSpeedButton1.Font.Size:=14;
2: Form1.CloseSpeedButton1.Font.Size:=14;
2: Form1.ManufSpeedButton4.Font.Size:=14;
3: Form1.IzdSpeedButton1.Font.Size:=16;
3: Form1.CloseSpeedButton1.Font.Size:=16;
3: Form1.ManufSpeedButton4.Font.Size:=16;
end;

Здесь я написал пример для 4 Items :10,12,14,16 шрифты.
Использовал для настройки только трех кнопок(У меня их 8 шт)
В итоге при компиляции получаю 10 error : "Duplicate case label"
Как решить эту проблему?


 
Dmitrij_K   (2006-07-16 10:00) [1]

Справку читать пробывал?
Там очень доступно написано.


 
SergP ©   (2006-07-16 10:29) [2]


...
case Radiogroup2.ItemIndex of
0: begin
    Form1.IzdSpeedButton1.Font.Size:=10;
    Form1.CloseSpeedButton1.Font.Size:=10;
    Form1.ManufSpeedButton4.Font.Size:=10;
  end;
1: begin
    Form1.IzdSpeedButton1.Font.Size:=12;
    Form1.CloseSpeedButton1.Font.Size:=12;
    Form1.ManufSpeedButton4.Font.Size:=12;
  end;
...


А вообще лучше было бы так:


procedure TFontForm.RadioGroup2Click(Sender: TObject);
var
 i:integer;
begin
case Radiogroup2.ItemIndex of
0: i:=10;
1: i:=12;
...
end;

Form1.IzdSpeedButton1.Font.Size:=i;
Form1.CloseSpeedButton1.Font.Size:=i;
Form1.ManufSpeedButton4.Font.Size:=i;
end;


В некоторых случаях даже так удобнее:

Form1.IzdSpeedButton1.Font.Size:=Radiogroup2.ItemIndex*2+10;
Form1.CloseSpeedButton1.Font.Size:=Radiogroup2.ItemIndex*2+10;
Form1.ManufSpeedButton4.Font.Size:=Radiogroup2.ItemIndex*2+10;


 
Chort ©   (2006-07-16 10:58) [3]

to SergP. Огромное спасибо ,сделал
procedure TFontForm.RadioGroup2Click(Sender: TObject);
var
i:integer;
begin
case Radiogroup2.ItemIndex of
0: i:=6;
1: i:=8;
2: i:=10;
3: i:=12;
4: i:=14;
5: i:=16;
6: i:=18;
end;
Form1.IzdSpeedButton1.Font.Size:=i;
Form1.TypeDSpeedButton2.Font.Size:=i;
Form1.ManufSpeedButton4.Font.Size:=i;
Form1.TypePSpeedButton5.Font.Size:=i;
Form1.PlatfSpeedButton6.Font.Size:=i;
Form1.LangSpeedButton7.Font.Size:=i;
Form1.CategSpeedButton8.Font.Size:=i;
Form1.CloseSpeedButton1.Font.Size:=i;
end;
end.
Только при компиляции появляется один Warning: Variable "i" might not have been initialized
Както можно избежать этого?


 
SergP ©   (2006-07-16 11:35) [4]

> Только при компиляции появляется один Warning: Variable
> "i" might not have been initialized
> Както можно избежать этого?

Например присвоить переменной i какое-нить значение до выполнения case


 
SergP ©   (2006-07-16 11:39) [5]

Либо так напиши:


procedure TFontForm.RadioGroup2Click(Sender: TObject);
Const
 FntSize[0..6] of integer = (6,8,10,12,14,16,18);
begin
 Form1.IzdSpeedButton1.Font.Size:=FntSize[Radiogroup2.ItemIndex];
 Form1.TypeDSpeedButton2.Font.Size:=FntSize[Radiogroup2.ItemIndex];
...
end.


 
SergP ©   (2006-07-16 11:41) [6]

> [5] SergP ©   (16.07.06 11:39)
Ошибся

Const
FntSize:array[0..6] of integer = (6,8,10,12,14,16,18);


 
Chort ©   (2006-07-16 13:03) [7]

Помогло! Спасибо! Вышлите свои ФИО и данные на softvok@ya.ru, я запишу Вас в список помощников разработки программы.(на англ.)


 
SergP ©   (2006-07-16 13:37) [8]

> [7] Chort ©   (16.07.06 13:03)
> Помогло! Спасибо! Вышлите свои ФИО и данные на softvok@ya.ru,
> я запишу Вас в список помощников разработки программы.(на
> англ.)


:-)
Не нужно...



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.043 c
4-1146806660
__DATA__
2006-05-05 09:24
2006.08.27
Сообщение, отвечающее за изменение списка открытых окон в системе


1-1152605075
Levin_610
2006-07-11 12:04
2006.08.27
активность пользователя


2-1155029207
Ega23
2006-08-08 13:26
2006.08.27
DBGridEh - TitleFont для нескольких колонок


15-1154417219
E'n'N
2006-08-01 11:26
2006.08.27
Зачем вам нужен КПК? Как вы его используете?


3-1150881358
vantage-10
2006-06-21 13:15
2006.08.27
При отсутствии полей замена нулевыми значениями





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский