Въпрос # 3142 ... ksperty! Ако свойствата MAXVALUE и MINVALUE компонент spinedit еднакво ... (работещи с
Здравейте, скъпи експерти!
Ако свойствата и MAXVALUE MINVALUE SpinEdit компонент равни помежду си, този компонент губи своята най-важното качество - ограничение стойност (Value) от по-горе и по-долу.
Например, необходимо е да се направи много стои в един ред на компоненти с несвързани интервала.
Как да се получи около тази точка спретнато и красиво?
Например, аз го направих така, докато: (MAXVALUE <> MINVALUE)
И така, за всяка двойка.
- SpinEdit12. MINVALUE: = SpinEdit11.Value;
- SpinEdit12. MAXVALUE: = SpinEdit13.Value;
- SpinEdit13. MINVALUE: = SpinEdit12.Value;
- SpinEdit13. MAXVALUE: = SpinEdit14.Value;
- ако SpinEdit12.Value = SpinEdit11.Value thenSpinEdit12.Value: = SpinEdit12.Value + 1;
- ако SpinEdit12.Value = SpinEdit13.Value thenSpinEdit12.Value: = SpinEdit12.Value-1;
- ако SpinEdit13.Value = SpinEdit12.Value след SpinEdit13.Value: = SpinEdit13.Value + 1;
- ако SpinEdit13.Value = SpinEdit14.Value след SpinEdit13.Value: = SpinEdit13.Value-1;
издадат мини-форум
OnChange е възможно да се гарантира, че
ако MAXVALUE> MINVALUE
след това.
друго. ;
Като цяло, един странен подход. Бях го проектирани, както в Partition Magic, например. Какво е необходимо? Може би има друго решение?
Аз правя лаборатории и kursachi на Delphi и Turbo Pascal. За бирата! Напиши в лично, и по-добре в ICQ. И още по-добре - обадете се на Skype!
Partition Magic е в D7, ако има, къде? Просто погледнете за никой.
Partition Magic - е програма, по този начин.
И може би, когато една и съща граница, само за да го недостъпен?
Tick "прочете потвърждение" - универсален зло.
Колко? Можете да намалите обема на кода, ако ги бутнете в TList или TObjectList.
Съгласен съм за "Направи го недостъпна" или може би по-добре го сложи ReadOnly: = вярно;
Ето една част от код от Spin.pas на файлове:
функционира TSpinEdit.CheckValue (NEWVALUE: LongInt): LongInt;
започвам
Резултат: = NEWVALUE;
ако (FMaxValue <> FMinValue) след това
започвам
ако NEWVALUE
иначе, ако NEWVALUE> FMaxValue след това
Резултат: = FMaxValue;
приключи;
приключи;
Защо Borland добавя условен израз: ако (FMaxValue <> FMinValue), след това - няма да има никакви проблеми. Аз съм начинаещ и не виждате работа.
Заплаха Partition Magic сигурност прог)))) още не остана твърде дълго
Вероятно, че е необходимо да ги правят на имота е включен или изключен. това условие проверка. Логиката за програмиране понякога е различен от математическата.