问题描述
我需要在画布中创建一个框架,以便删除用户可以放置在画布中的大量小部件。它放置在框架中,因此我可以使用canvas.delete(“ all”)删除它们。我还需要一些行,因为Frame不接受行,所以我需要直接在下面的画布中创建它。问题在于框架与线重叠。我尝试了canvas.lift()和tag.raise()方法,但是它们不起作用。知道如何解决吗?
<div class="col-sm-12">
<ng-container *ngFor="let item of data; let i = index">
<div
[ngClass]="{
'd-none':
item.clase == 'categoria1' && !categoria1) ||
item.clase == 'categoria2' && !categoria2) ||
item.clase == 'categoria3' && !categoria3)
}">
<div id="ribbon-container">
<span id="ribbon" [ngClass]="item.clase">
{{item.categoria}}
</span>
</div>
<div>
<img [src]="'./assets/img/emotions/' + item.imagen" class="img-fluid imagen_tarjeta_emociones float-right"
/>
</div>
</ng-container>
解决方法
放置在画布中的小部件将始终位于其他图形项(如线和圆)上方。无法解决该限制。
来自canonical tcl/tk documentation:
注意:由于管理窗口的方式的限制,无法在窗口项的顶部绘制其他图形项(例如线条和图像)。窗口项始终会遮盖与其重叠的所有图形,无论它们在显示列表中的顺序如何。还要注意,与其他画布项目不同,窗口项目不会通过其包含的画布的边框进行裁剪以显示,而是由 window 选项指定的窗口的父窗口小部件进行裁剪;当父窗口小部件是画布时,这意味着该窗口项可以与画布的边框重叠。