我創建FMX在運行時動態到ListBox中編輯數據控制:德爾福firemoneky控制在運行時
這是大多數部件的做工精細,除了TComboTrackBar
和TSpinBox
,爲儘管有以下代碼,但沒有顯示任何值。
此處可用於紡紗器:
// Create the SpinBox
SpinBox:= TSpinBox.Create(InternalLayout);
With SpinBox do
begin
Parent:= InternalLayout;
Name:= 'sb' + ASubParameter.Name;
BeginUpdate;
Align:= TAlignLayout.Client;
Size.PlatformDefault:= False;
HitTest:= True;
Margins.Top:= 1;
Margins.Bottom:= 1;
Min:= ASubParameter.Minimum;
Max:= ASubParameter.Maximum;
DecimalDigits:= 3;
KeyboardType:= TVirtualKeyboardType.NumberPad;
case AParameter.ParamType of
TParameterType.ptShortInt, TParameterType.ptInteger:
begin
ValueType:= TNumValueType.Integer;
Value:= ASubParameter.ValueDefault.ToInteger;
end;
TParameterType.ptSingle, TParameterType.ptDouble:
begin
ValueType:= TNumValueType.Float;
Value:= ASubParameter.ValueDefault.ToSingle;
end;
end;
Enabled:= not(ASubParameter.ReadOnly);
OnChange:= ASubParameter.OnChanged;
EndUpdate;
end;
在這種情況下,所有SpinBoxes都應該作爲默認值,顯示0。 如果我點擊右箭頭,我得到1.如果我然後點擊左箭頭,我得到0. 所以行爲是正確的,但控件不顯示正確的起始值。
任何想法可能是錯誤或我的代碼中缺少?
在Windows上,這工作正常。在Android上,這不起作用。
你用什麼德爾福版本?它適用於我在Delphi上的Android 10.2.1 – EugeneK
也適用於什麼風格?它看起來不像標準之一,所以它可能不支持spinbox – EugeneK
感謝您的好建議。我試過沒有StyleBook,它有相同的結果。直到我使用GUI更改值時才顯示值。 Trackbar和SPinBox也是如此。順便說一句, –