-
Постов
152 -
Зарегистрирован
-
Посещение
-
Победитель дней
4
Активность репутации
-
VladimirS получил реакцию от Brovin Yaroslav в Изменение свойства шрифта одной ячейки в FireMonkey TStringGrid DELPHI XE6
ребята, вы чё, это же все есть в исходниках Embarcadero
Открываете модуль с контролом, и ищите его метод "что-то-там-Paint-что-то-там"
-
VladimirS получил реакцию от krapotkin в Создание и коррекция кастомных стилей в XE8
Да, насчет стилей - контролам в хелп, думаю, уже пора добавлять еще одну вкладку к методам и событиям - Стиль
-
VladimirS получил реакцию от AngryOwl в транслировать изображение экрана Андроид-смартфона
Подскажите, как транслировать изображение экрана Андроид-смартфона на ПК? Желательно без root и для версии 4.1.1 4.2
-
VladimirS отреагировална AngryOwl в [TListBox] Как отобразить итемы в виде панелей?
Проект.
Кусок стиля:
object TLayout StyleName = 'listboxitemmessagestylelight' EnableDragHighlight = False Padding.Left = 4.000000000000000000 Padding.Top = 4.000000000000000000 Padding.Right = 4.000000000000000000 Padding.Bottom = 4.000000000000000000 Position.X = 416.000000000000000000 Position.Y = 392.000000000000000000 Size.Width = 220.000000000000000000 Size.Height = 70.000000000000000000 Size.PlatformDefault = False Visible = False TabOrder = 91 object TRectangle StyleName = 'rectMain' Align = Contents Corners = [] EnableDragHighlight = False Fill.Color = claWhite HitTest = False Size.Width = 220.000000000000000000 Size.Height = 70.000000000000000000 Size.PlatformDefault = False end object TText StyleName = 'detail' Align = Client ClipChildren = True Cursor = crHandPoint EnableDragHighlight = False HitTest = False Margins.Right = 22.000000000000000000 Size.Width = 136.000000000000000000 Size.Height = 36.000000000000000000 Size.PlatformDefault = False TextSettings.Trimming = Character end object TActiveStyleTextObject StyleName = 'text' Align = Top EnableDragHighlight = False Margins.Right = 22.000000000000000000 Position.X = 58.000000000000000000 Position.Y = 4.000000000000000000 Size.Width = 136.000000000000000000 Size.Height = 26.000000000000000000 Size.PlatformDefault = False TextSettings.Font.Style = [fsBold] TextSettings.Trimming = Character TextSettings.WordWrap = False Shadow.Color = claBlack Shadow.Offset.XI = 1 Shadow.Offset.YI = 1 ShadowVisible = False ActiveTrigger = Selected ActiveColor = claBlack ActiveShadow.Color = claBlack ActiveShadow.Offset.XI = 1 ActiveShadow.Offset.YI = 1 end object TCircle StyleName = 'roundavatar' Align = MostLeft EnableDragHighlight = False Fill.Bitmap.WrapMode = TileStretch Fill.Kind = Bitmap HitTest = False Margins.Left = 2.000000000000000000 Margins.Right = 4.000000000000000000 Position.X = 6.000000000000000000 Position.Y = 4.000000000000000000 Size.Width = 48.000000000000000000 Size.Height = 62.000000000000000000 Size.PlatformDefault = False Stroke.Color = claGray Stroke.Thickness = 2.000000000000000000 end object TText StyleName = 'btnclosemessage' Anchors = [akTop, akRight] EnableDragHighlight = False Opacity = 1.000000000000000000 Position.X = 194.000000000000000000 Position.Y = 4.000000000000000000 Size.Width = 26.000000000000000000 Size.Height = 26.000000000000000000 Size.PlatformDefault = False Text = #58882 TextSettings.Font.Family = 'spherelive' TextSettings.Font.Size = 26.000000000000000000 TextSettings.WordWrap = False end end Фрагменты кода:
procedure TfmMissMessages.MissMessageApplyStyle(Sender: TObject); var StyleObject : TFmxObject; begin (Sender as TListBoxItem).OnClick := MessageItemClick; StyleObject := TListBoxItem(Sender).FindStyleResource('btnclosemessage') as TText; if Assigned(StyleObject) then TText(StyleObject).OnClick := DelMissMessageItemClick; StyleObject := TListBoxItem(Sender).FindStyleResource('roundavatar') as TCircle; if Assigned(StyleObject) then try TCircle(StyleObject).Fill.Bitmap.Bitmap.Canvas.BeginScene(); TCircle(StyleObject).Fill.Bitmap.Bitmap := {тут ваш битмап}; finally TCircle(StyleObject).Fill.Bitmap.Bitmap.Canvas.EndScene; end; end; procedure TfmMissMessages.AddMissMessageItem(......... AText: string); var newItem : TListBoxItem; newHeight : Integer; StyleObject: TFmxObject; begin .......... newItem := TListBoxItem.Create(nil); newItem.AutoTranslate := False; newItem.ClipChildren := True; newItem.CanFocus := False; newItem.EnableDragHighlight := False; newItem.Height := C_HeightItemMessage; newItem.Margins.Bottom := 5; newItem.StyledSettings := [TStyledSetting.Family, TStyledSetting.Style, TStyledSetting.FontColor]; newItem.TextSettings.HorzAlign := TTextAlign.Center; newItem.Text := AText; newItem.HitTest := True; newItem.OnClick := MessageItemClick; newItem.OnApplyStyleLookup := MissMessageApplyStyle; StyleObject := newItem.FindStyleResource('btnclosemessage') as TText; if Assigned(StyleObject) then TText(StyleObject).OnClick := DelMissMessageItemClick; StyleObject := newItem.FindStyleResource('roundavatar') as TCircle; if Assigned(StyleObject) then try TCircle(StyleObject).Fill.Bitmap.Bitmap.Canvas.BeginScene(); TCircle(StyleObject).Fill.Bitmap.Bitmap := {тут ваш битмап}; finally TCircle(StyleObject).Fill.Bitmap.Bitmap.Canvas.EndScene; end; lbxMissMessage.BeginUpdate; lbxMissMessage.AddObject(newItem); lbxMissMessage.EndUpdate; end; procedure TfmMissMessages.DelMissMessageItem(Sender: TListBoxItem); var newHeight : Integer; begin if not Assigned(Sender as TListBoxItem) then Exit; ............. lbxMissMessage.Items.Delete(TListBoxItem(Sender).Index); end; Извините, некоторые фрагменты кода удалены... Но думаю и так будет все понятно.
-
VladimirS отреагировална krapotkin в Неблокирующий диалог в мобильном приложении
пришлось еще одну панель чисто для рамочки накинуть...
итог
-
VladimirS отреагировална Равиль Зарипов (ZuBy) в Проектирование интерфейса
Для анимации переходов точно TTabControl, но не лепить все на одной форме
-
-
VladimirS получил реакцию от zekelive в Отладка потоков в DataSnape
конечно есть.
TThread.CreateAnonymousThread( procedure() begin clmClient.ServerMethods1Client.RegisterWare(seWareID.Value, clmClient.DSClientCallbackChannelManager1.ManagerId) end).Start; А при чём тут отладка? ;-)
-
VladimirS получил реакцию от xenon54 в [TidHTTP] Как получить ответ от веб-сервера в нужной кодировке?
А что, Cи позволяет создавать выполнять код вне процедур, функций, методов?
-
VladimirS получил реакцию от xenon54 в TMemo скролится вниз не до конца и отрезает буквы.
баг в QC завёл?
я отдам за него голос.
-
VladimirS получил реакцию от xenon54 в [Android] Поддерживается ли формат bmp?
код, которым ты сохраняешь, - государственная тайна?
-
VladimirS отреагировална Brovin Yaroslav в При запуске отладки на планшете получаю ошбку "Unable to start gdbserver on port '12345' Can't open socket: Permission denied.."
Причина
По скольку Андроид дает слишком много возможностей для разработчиков, то эта платформа легко подвергается взлому со стороны (например обычное приложение, которое имеет привилегии на чтение конфиденциальной информации, может в фоне скидывать в инет ваши переписки, чаты и тд).
Чтобы обезопасить пользователей, вендоры прибегают, как минимум к двум известным мне решениям:
Блокирование нестандартных портов Установка антивирусов, блокирующих порты Эта ошибка говорит, что сам девайс на уровне ядра запрещает приложению использовать указанный порт. Ну и как следствие, отладочный сервер, запускаемый с приложением не может использовать порт для общения с IDE.
Решение
Решение простое, попробовать подобрать такой номер порта, который не будет блокироваться системой. Как поменять отладочный порт, написано тут. Отключить антивирус при его наличии. P.S. Обратите внимание, что все девайсы от Google корректно работают с IDE.
P.S.S. Можете попробовать написать простое приложение, которое будет пробовать открыть сокет на разных портах и просканировать ваше устройство на наличие открытых портов.
-
VladimirS получил реакцию от Brovin Yaroslav в [TIdTCPClient] Проблемы с кодировкой. Не удается на сервере получить ответ от клиента в нужной кодировке
подозреваю, что передается в UTF8
Попробуй сохранить приходящий текст в файл на андроиде, и посмотреть с компа - в какой кодировке он там.
-
VladimirS получил реакцию от SerhioUser в Дизайн формы
Берешь форму.
Кидаешь TLayout
Он виден на форме (его границы)
Кидаешь TFlowLayout, TFlowLayoutBreak, TGridLayout, TGridPanelLayout - когда они не выделены - они на форме не заметны совершенно.
Если возможно, сделать какую-нить команду типа "показать/скрыть границы контролов"
Или что-то типа предпросмотра, чтобы можно было точно спозиционировать контролы относительно друг друга, а потом посмотреть как это будет выглядеть без сборки и запуска проекта.
-
VladimirS получил реакцию от xenon54 в ListItemBackground
См. исходники, конкретно часть
TListViewItemObjects = class(TListItemObjects) private FAppearance: TItemAppearanceObjects; function GetDetailObject: TListItemText; function GetGlyphButton: TListItemGlyphButton; function GetImageObject: TListItemImage; function GetTextButton: TListItemTextButton; function GetTextObject: TListItemText; function GetAccessoryObject: TListItemAccessory; function FindObjectT<T: TListItemObject>(const AName: string): T; public procedure Clear; override; property TextObject: TListItemText read GetTextObject; property DetailObject: TListItemText read GetDetailObject; property ImageObject: TListItemImage read GetImageObject; property TextButton: TListItemTextButton read GetTextButton; property GlyphButton: TListItemGlyphButton read GetGlyphButton; property AccessoryObject: TListItemAccessory read GetAccessoryObject; end; и думай, где и что тебе придется поменять, чтобы добавить в него еще один элемент - фон, с цветом/градиентом/картинкой/чем-нибудь-ещё
-
VladimirS получил реакцию от xenon54 в ListItemBackground
Посмотрел исходники.
Боюсь, не рассчитано на такое TListView.
тебе придется делать потомок TListView, TListViewItem и TListViewItemObject\
или переделать на TListBox.
-
VladimirS получил реакцию от Brovin Yaroslav в Как узнать, что в TTimeEdit поменялось время?
может ты про событие хотел спросить?
http://docwiki.embarcadero.com/Libraries/XE5/en/FMX.DateTimeCtrls.TCustomTimeEdit.OnTimeChanged
-
VladimirS получил реакцию от rareMax в [Android] Что использовать для SSL в Indy под Android?
Вторая же ссылка: http://indy.fulgan.com/SSL/OpenSSLStaticLibs.zip
P.S. в lib\android\debug загляни - там и *.dcu и *.a и *.o
-
VladimirS получил реакцию от Brovin Yaroslav в StyleBook в DataModule
http://qc.embarcadero.com/wc/qcmain.aspx?d=127811