TRadioGroup/fi

From Free Pascal wiki
Jump to navigationJump to search

Deutsch (de) English (en) suomi (fi) français (fr) 日本語 (ja) русский (ru)

TRadioGroup tradiogroup.png on ryhmä toisiinsa liittyviä mutta toisiaan poissulkevia valintapainikkeita (vertaa TRadioButton, radiopainike) , joka edellyttää käyttäjän valita vain jokin (yksi) joukosta vaihtoehtoja. Se on kuin TGroupBox integroidulla radiopainikkeilla.

Käyttö

Jos haluataan käyttää TRadioGroup:a lomakkeella , niin se voidaan valita komponenttipaletin Standard-välilehdeltä ja asettaa se klikkaamalla lomakkeelle.

Pieni esimerkki

Tässä esimerkissä piirretään satubnnaiseesti geometrisiä muotoja jotka määräytyvät mitä on lomakkeella radiopainikkeista TRadioGroup valittu. RadioGroup1 määrittää kuvion ja RadioGroup2 määrän.

  • Luodaan uusi sovellus ja sijoitetaan kaksi TRadioGroup:a lomakkeelle
  • Muutetaan komponenttimuokkaimessa RadioGroup1 ominaisuus Name arvoon rgShape ja Caption ominaisuus arvoon Shape.
  • Muutetaan RadioGroup2 ominaisuus Name arvoon rgCount ja Caption ominaisuus arvoon Count
  • Lisätään radiopainikkeet rgShape:n:
    • komponenttimuokkaimessa valitaan rgShape:n ominaisuus Items
    • klikataan painiketta [...] niin Merkkijonojen muokkain-ikkuna avautuu
    • kirjoitetaan siinä kolmelle eri riville tekstiLines, Rectangles ja Ellipses jonka jälkeen lopuksi painetaan OK'- painiketta.
  • Tehdään samalla tavalla radiopainikkeet rgCount:lle mutta kirjoitetaan sisällöksi luvut 1,5,10,20,50 ja 100 8Jokainen luku omalle riville).
  • Asetetaan kummassakin (rgShape ja rgCount) ensimmäinen radiopainike kuin valituksi, asettamalla kummankin ItemIndex ominaisuus arvoon nolla (0).
  • Luodaan onClick-tapahtumankäsittelijä rgShape:lle kaksoisklikkaamalla sitä lomakkeella.
  • Laitetaan rgCount käyttämään tätä tapahtumankäsittelijää:
    • komponenttimuokkaimessa valitaan rgCount
    • valitaan välilehti Tapahtumat
    • Mennään OnClick tapahtumaan ja valitaan viereisestä yhdistelmäruudusta (TComboBox)rgShapeClick
  • kun rgShape or rgCount klikataan niin lomaketta pitää päivittää, joten kirjoitetaan seuraava koodi in tapahtumakäsittelijään:
procedure TForm1.rgShapeClick(Sender: TObject);
begin
  Repaint;
end;
  • whenever the form is redrawn, the shapes should be drawn:
    • in the Object Inspector select Form1
    • select the tab Events
    • click on the button [...] next to the event OnPaint
    • the handler is created, enter the following code:
procedure TForm1.FormPaint(Sender: TObject);
var
  i: Integer;
begin
  if TryStrToInt(rgCount.Items[rgCount.ItemIndex], i) then
    for i:=1 to i do begin
      Canvas.Pen.Color:=Random($1000000);
      Canvas.Brush.Color:=Random($1000000);
      case rgShape.Items[rgShape.ItemIndex] of
        'Lines':      Canvas.Line(Random(ClientWidth), Random(ClientHeight), Random(ClientWidth), Random(ClientHeight));
        'Rectangles': Canvas.Rectangle(Random(ClientWidth), Random(ClientHeight), Random(ClientWidth), Random(ClientHeight));
        'Ellipses':   Canvas.Ellipse(Random(ClientWidth), Random(ClientHeight), Random(ClientWidth), Random(ClientHeight));
      end;
    end;
end;
  • Aloita ohjelma, se voisi näyttää tältä:

ExampleTRadioGroup.png

Katso myös


LCL Components
Component Tab Components
Standard TMainMenu • TPopupMenu • TButton • TLabel • TEdit • TMemo • TToggleBox • TCheckBox • TRadioButton • TListBox • TComboBox • TScrollBar • TGroupBox • TRadioGroup • TCheckGroup • TPanel • TFrame • TActionList
Additional TBitBtn • TSpeedButton • TStaticText • TImage • TShape • TBevel • TPaintBox • TNotebook • TLabeledEdit • TSplitter • TTrayIcon • TControlBar • TFlowPanel • TMaskEdit • TCheckListBox • TScrollBox • TApplicationProperties • TStringGrid • TDrawGrid • TPairSplitter • TColorBox • TColorListBox • TValueListEditor
Common Controls TTrackBar • TProgressBar • TTreeView • TListView • TStatusBar • TToolBar • TCoolBar • TUpDown • TPageControl • TTabControl • THeaderControl • TImageList • TPopupNotifier • TDateTimePicker
Dialogs TOpenDialog • TSaveDialog • TSelectDirectoryDialog • TColorDialog • TFontDialog • TFindDialog • TReplaceDialog • TTaskDialog • TOpenPictureDialog • TSavePictureDialog • TCalendarDialog • TCalculatorDialog • TPrinterSetupDialog • TPrintDialog • TPageSetupDialog
Data Controls TDBNavigator • TDBText • TDBEdit • TDBMemo • TDBImage • TDBListBox • TDBLookupListBox • TDBComboBox • TDBLookupComboBox • TDBCheckBox • TDBRadioGroup • TDBCalendar • TDBGroupBox • TDBGrid • TDBDateTimePicker
Data Access TDataSource • TCSVDataSet • TSdfDataSet • TBufDataset • TFixedFormatDataSet • TDbf • TMemDataset
System TTimer • TIdleTimer • TLazComponentQueue • THTMLHelpDatabase • THTMLBrowserHelpViewer • TAsyncProcess • TProcessUTF8 • TProcess • TSimpleIPCClient • TSimpleIPCServer • TXMLConfig • TEventLog • TServiceManager • TCHMHelpDatabase • TLHelpConnector
Misc TColorButton • TSpinEdit • TFloatSpinEdit • TArrow • TCalendar • TEditButton • TFileNameEdit • TDirectoryEdit • TDateEdit • TTimeEdit • TCalcEdit • TFileListBox • TFilterComboBox • TComboBoxEx • TCheckComboBox • TButtonPanel • TShellTreeView • TShellListView • TXMLPropStorage • TINIPropStorage • TJSONPropStorage • TIDEDialogLayoutStorage • TMRUManager • TStrHolder
LazControls TCheckBoxThemed • TDividerBevel • TExtendedNotebook • TListFilterEdit • TListViewFilterEdit • TLvlGraphControl • TShortPathEdit • TSpinEditEx • TFloatSpinEditEx • TTreeFilterEdit • TExtendedTabControl •
RTTI TTIEdit • TTIComboBox • TTIButton • TTICheckBox • TTILabel • TTIGroupBox • TTIRadioGroup • TTICheckGroup • TTICheckListBox • TTIListBox • TTIMemo • TTICalendar • TTIImage • TTIFloatSpinEdit • TTISpinEdit • TTITrackBar • TTIProgressBar • TTIMaskEdit • TTIColorButton • TMultiPropertyLink • TTIPropertyGrid • TTIGrid
SQLdb TSQLQuery • TSQLTransaction • TSQLScript • TSQLConnector • TMSSQLConnection • TSybaseConnection • TPQConnection • TPQTEventMonitor • TOracleConnection • TODBCConnection • TMySQL40Connection • TMySQL41Connection • TMySQL50Connection • TMySQL51Connection • TMySQL55Connection • TMySQL56Connection • TMySQL57Connection • TSQLite3Connection • TIBConnection • TFBAdmin • TFBEventMonitor • TSQLDBLibraryLoader
Pascal Script TPSScript • TPSScriptDebugger • TPSDllPlugin • TPSImport_Classes • TPSImport_DateUtils • TPSImport_ComObj • TPSImport_DB • TPSImport_Forms • TPSImport_Controls • TPSImport_StdCtrls • TPSCustomPlugin
SynEdit TSynEdit • TSynCompletion • TSynAutoComplete • TSynMacroRecorder • TSynExporterHTML • TSynPluginSyncroEdit • TSynPasSyn • TSynFreePascalSyn • TSynCppSyn • TSynJavaSyn • TSynPerlSyn • TSynHTMLSyn • TSynXMLSyn • TSynLFMSyn • TSynDiffSyn • TSynUNIXShellScriptSyn • TSynCssSyn • TSynPHPSyn • TSynTeXSyn • TSynSQLSyn • TSynPythonSyn • TSynVBSyn • TSynAnySyn • TSynMultiSyn • TSynBatSyn • TSynIniSyn • TSynPoSyn
Chart TChart • TListChartSource • TRandomChartSource • TUserDefinedChartSource • TCalculatedChartSource • TDbChartSource • TChartToolset • TChartAxisTransformations • TChartStyles • TChartLegendPanel • TChartNavScrollBar • TChartNavPanel • TIntervalChartSource • TDateTimeIntervalChartSource • TChartListBox • TChartExtentLink • TChartImageList
IPro TIpFileDataProvider • TIpHtmlDataProvider • TIpHttpDataProvider • TIpHtmlPanel
Virtual Controls TVirtualDrawTree • TVirtualStringTree • TVTHeaderPopupMenu