Перейти к содержанию
  • Регистрация

vasilius

Пользователи
  • Публикаций

    27
  • Зарегистрирован

  • Посещение

  • Победитель дней

    1

vasilius стал победителем дня 19 января

vasilius имел наиболее популярный контент!

Информация о vasilius

  • Звание
    Пользователь

Посетители профиля

Блок последних пользователей отключён и не показывается другим пользователям.

  1. vasilius

    ProgressBar и Gradient

    Здравствуйте! есть прогресс бар с таким стилем : object TRectangle StyleName = 'htrack' Align = Client Fill.Color = claSteelblue Sides = [] Size.Width = 193.000000000000000000 Size.Height = 17.000000000000000000 Size.PlatformDefault = False Stroke.Color = claNull XRadius = 1.000000000000000000 YRadius = 1.000000000000000000 object TRectangle StyleName = 'hindicator' Align = Left Fill.Kind = Gradient Fill.Gradient.Points = < item Color = xFF24C137 Offset = 0.000000000000000000 end item Color = xFF04E31A Offset = 0.844720482826232900 end item Color = xFF04E31B Offset = 1.000000000000000000 end> Fill.Gradient.StartPosition.Y = 0.500000000000000000 Fill.Gradient.StopPosition.X = 1.000000000000000000 Fill.Gradient.StopPosition.Y = 0.500000000000000000 Sides = [] Size.Width = 138.000000000000000000 Size.Height = 17.000000000000000000 Size.PlatformDefault = False Stroke.Color = claSteelblue end end то есть , это обычный прогрес бар где htrack и hindicator сделаны на базе rectangle у ползунка заполнение цветом делается через градиент и нужно динамически менять этот градиент делаю это так: pbInputLevel->StylesData["hindicator.Fill.Gradient.Points[0].Color"] = TValue::_op_Implicit(0xFF24C137); pbInputLevel->StylesData["hindicator.Fill.Gradient.Points[1].Color"] = TValue::_op_Implicit(0xFF04E31A); pbInputLevel->StylesData["hindicator.Fill.Gradient.Points[2].Color"] = TValue::_op_Implicit(0xFF04E31B); if (inLed > -6.00f) { pbInputLevel->StylesData["hindicator.Fill.Gradient.Points[1].Color"] = TValue::_op_Implicit(claRed); pbInputLevel->StylesData["hindicator.Fill.Gradient.Points[0].Color"] = TValue::_op_Implicit(claBlack); } if (inLed > -1.00f) pbInputLevel->StylesData["hindicator.Fill.Gradient.Points[1].Color"] = TValue::_op_Implicit(claRed); работает странно и вываливается exception raised exception class EPropWriteOnly with message 'Color'. Есть идеи как менять градиент на лету правильно?
  2. да и для винды это не работает в вин10 работает, в вин7 - нет
  3. ну для форума важна же читабельность так-то и в одну строку можно уложить TPointF pos = ClientToScreen(btnBackup->LocalToAbsolute(TPointF(0, btnBackup->Height + 1))); pmenBackup->Popup(pos.X, pos.Y);
  4. Здравствуйте Спасибо. Это решение имеет право на жизнь , хоть и не очевидное (само решение) остановился на таком варианте, по данному предложенному варианту: TPointF pos = TPointF(0, btnBackup->Height + 1); pos = btnBackup->LocalToAbsolute(pos); pos = Screen->ActiveForm->ClientToScreen(pos); pmenBackup->Popup(pos.X, pos.Y); Если есть еще варианты - был бы рад Спасибо
  5. vasilius

    Кнопка с выпадающим меню

    Здравствуйте Туплю видимо : не могу найти как сделать кнопку с выпадающим меню При нажатии ЛКМ на кнопку хочется чтобы появлялось меню Есть ли такой стандартный контрол. Перед тем как извращатся решил уточнить, чтобы не создавать велосипед Заранее спасибо
  6. AddFontResource кроме 10 винды, еще у кого-то работает? в 7-ке, например?
  7. Так можно установить в виндовс шрифт без установки в систему?
  8. Так сами посмотрите - в StyleBook"е
  9. Принимаю поздравления... Начал переносить код с нерабочего проекта в рабочий (который запускался)... у меня в Create было заполнение поля стиля... тип значения TValue у меня было = TValue::From<String>("0"); этот код нормально работал без линковки - все было хорошо с линковкой вылазил Access violation описаный выше решение такое : = TValue::_op_Implicit(String("0")); К сожалению, дебагер, как я и говорил, абсолютно бесполезный в этой среде, жаль.....
  10. Я создал чистый проект подобавлял все компоненты, которые используются в текущем, Втом числе и ДЛЛ , убрал линковку пакеджей и RTL - проект запускается . Технология работает. Тоест дело не в ДЛЛ. Но в моем проекта проблема осталась... Посмотрире на скриншот выше, там дело до ImageList не доходит... и ИмеджЛист может быть Dialogs или что-то другое - тут как компилятор делает... по разному бывает Вот скрин с дебагера под Вин32 - он более понятный, чем с дебагера под вин64 -))) Ошибка в модуле System class function TMonitor.GetFieldAddress(const AObject: TObject): PPMonitor; begin Result := GetMonitorFieldAddress(AObject); end; До моего кода дело не доходит...
  11. Это, к сожалению, не помогает. Ехе маленький , и требует пакеты...
  12. Вы имеете ввиду этот список? На счет access violation я бы с удовольствием разобрался, но как видно с скринов - там до моего кода дело не доходит.... и не хочу разводить болото, но худшего дебагера чем в этой среде я не встречал... хуже только полное отсутствие... ну или я не умею его готовить ...
  13. Спасибо,что стараетесь помочь, но видимо Вам не совсем понятна суть проблемы... В любом случае, буду благодарен за полезные советы
  14. Ммм... может подскажите как.... Исключение только, если Link with runtime packages = False
×
×
  • Создать...