Skip to content

Marker 继承自: ft.BaseControl

A marker displayed on the Map at the specified location through the MarkerLayer.

属性 ​

名称类型默认值说明
contentft.ControlrequiredThe content to be displayed at coordinates. Raises: ValueError: If it is not visible.
coordinatesMapLatitudeLongituderequiredThe coordinates of the marker. This will be the center of the marker, if alignment is CENTER.
rotateOptional[bool]NoneWhether to counter rotate this marker to the map's rotation, to keep a fixed orientation. So, when True, this marker will always appear upright and vertical from the user's perspective. If None, defaults to the value of the parent rotate. Note: This is not used to apply a custom rotation in degrees to this marker.
heightft.Number30.0The height of the content Control. Raises: ValueError: If it is less than 0.0.
widthft.Number30.0The width of the content Control. Raises: ValueError: If it is less than 0.0.
alignmentOptional[ft.Alignment]NoneAlignment of the marker relative to the normal center at coordinates. Defaults to the value of the parent alignment.
visibleboolTrueWhether this marker is rendered on the map.
dataAnyskip_任意类型的自定义数据。
keyOptional['KeyValue']None用于在更新之间保持控件身份稳定的 key。

只读属性 ​

名称类型默认值说明
parentOptional['BaseControl']—The direct ancestor(parent) of this control. It defaults to None and will only have a value when this control is mounted (added to the page tree). Page 控件(树的根)为例外 —— 它始终 parent=None。
page'Page'—此控件所属的页面。

方法 ​

名称类型默认值说明
before_update———
is_isolated——Return whether this control is marked as isolated. 被隔离的控件不会参与父级驱动的更新遍历,需要自行管理更新边界。
init——Called after control instance initialization and before the first build / update cycle. 可重写此钩子执行依赖于已初始化字段的轻量设置。 不要在这里调用 update()。
build——在控件初始化期间调用一次,用于定义其子控件。 page 属性在此方法中可用。
before_event——在事件处理器执行前拦截事件。 返回 False 取消分发,返回 True 或 None 则继续正常的事件处理。
did_mount——在控件挂载到页面树之后调用。 可重写以启动需要已挂载页面的资源,例如订阅、定时器或服务监听。
will_unmount——在控件从页面树移除之前调用。 可重写以释放 did_mount() 中创建的资源,例如订阅、定时器或外部句柄。
get_data_channel——Resolve the [DataChannel] allocated on the Dart side for this widget. Pattern: on_data_channel_open: Optional[ft.EventHandler[DataChannelOpenEvent]] = None def init(self): self.on_data_channel_open = self._on_open def _on_open(self, e): self._channel = self.get_data_channel(e.channel_id) Idempotent — the underlying Connection caches DataChannels by id, so repeated calls return the same instance. No error path: the id always comes from a framework-fired event, so by the time this runs the channel exists on both sides.
updateNone—请求更新该控件的 UI。 在修改控件状态或属性后调用。 控件必须已挂载到页面,并且未被冻结。

关注我,学习大模型、大数据、Python等热门技术。