本帖最后由 鸳鸯配2024 于 2024-8-13 18:26 编辑
好奇怪,我直接把代码拿过来,好像双击不生效。不会到最后一步去。
帮忙看下是什么原因
给你看下我的代码
我用的是vue3
所有的代码,都在 onMounted 方法里面
let designer = new GC.Spread.Sheets.Designer.Designer(document.getElementById("designer-container"), config);
let spread = designer.getWorkbook(); let sheet = spread.getActiveSheet();
config 的参数,我没有放出来。
- if (row >= startRow && row <= endRow && col >= startColumn && col <= endColumn) 不会进入到这个方法里面来。
复制代码- document.getElementById('designer-container').addEventListener('dblclick', function (e) {
- let _x = e.pageX - this.offsetLeft
- let _y = e.pageY - this.offsetTop
- let result = spread.hitTest(_x, _y)
- var {row, col} = getHitAreaName(result);
- for (let i = 0; i < sheet.shapes.all().length; i++) {
- if (sheet.shapes.all()[i] instanceof GC.Spread.Sheets.Shapes.PictureShape) {
- let pic = sheet.shapes.all()[i]
- let startRow = pic.startRow()
- let endRow = pic.endRow()
- let startColumn = pic.startColumn()
- let endColumn = pic.endColumn()
- if (row >= startRow && row <= endRow && col >= startColumn && col <= endColumn) {
- console.log(startRow,endRow,startColumn,endColumn)
- console.log(pic,"----当前图片双击", pic.name())
- }
- }
- }
- });
复制代码
这是放插入单元格的图片
- const newaddImgRow = () =>{
- let Designer = GC.Spread.Sheets.Designer.findControl('designer-container');
- let spread = Designer.getWorkbook()
- let sheet = spread.getActiveSheet();
- let height = sheet.getRowHeight(1) //获取第2行行高
- let width = sheet.getColumnWidth(2) //获取第2列宽度
- console.log(height, '--宽度--', width)
- let pic = sheet.shapes.addPictureShape("pic2", "https://p3.toutiaoimg.com/tos-cn-i-qvj2lq49k0/2e346589036945b9a9272983760b4b88~tplv-tt-large.image", 0,0,width,height)
- pic.startRow(1) //开始行在第二行
- pic.endRow(2) //结束行在第三行
- pic.startColumn(1) //开始列在第二列
- pic.endColumn(2) //结束列在第三列
- // pic.includeEmptyRegionCells(true)
- pic.allowMove(false) //图片不允许移动
- pic.allowResize(false) //图片不允许拉动调整大小
- pic.dynamicMove(true) //图片是否随插入行列移动
- pic.dynamicSize(true) //图片是否随行高列宽变化而变化
- }
复制代码 插入图片是生效的。
|