草庐IT

java - 使用 JXL 读取 Excel,每行的单元格计数在行之间变化

我已经尝试找到解决方案,但没有找到与我的问题相符的解决方案。我正在使用JXL读取excel电子表格并将每一行转换为指定的对象。一行中的每个单元格对应于我正在创建的对象的一个​​属性。我的电子表格有41列,在读取375行后,每行的单元格数从41变为32。我不明白为什么。这是我循环遍历行并检索单元格的代码:w=Workbook.getWorkbook(inputWorkbook);//GetthefirstsheetSheetsheet=w.getSheet(0);//Loopoverfirst10columnandlinesfor(introw=1;row其余代码继续获取每个单元格的内容

java - 计算单元格大小并绘制(中间有线)

我想绘制一个网格并在单元格中绘制内容(为了简单起见,只需填充它们)。总的来说,我几乎只在某些面板尺寸下工作,单元格距离它应该放置的位置大约1个像素(重叠线)。TBH我还没有真正做足够的计算来自己找到答案,所以我对此表示歉意,不过我真的不太确定如何解决这个“错误”。无论如何,这是代码:publicclassGuiextendsJFrame{publicstaticvoidmain(String[]args){newGui().setVisible(true);}publicGui(){setDefaultCloseOperation(WindowConstants.EXIT_ON_CLO

java - 行过滤器在单元格更新事件中无法按预期工作

在共享表模型示例中工作时,我意识到如果我们将行过滤器附加到表的行排序器,则此过滤器不会对单元格更新事件产生任何影响。根据RowSorterAPI:ConcreteimplementationsofRowSorterneedtoreferenceamodelsuchasTableModelorListModel.Theviewclasses,suchasJTableandJList,willalsohaveareferencetothemodel.Toavoidorderingdependencies,RowSorterimplementationsshouldnotinstallali

java - 如何仅单击一次鼠标即可编辑 JXTreeTable 单元格?

我想使用JComboBox作为JXTreeTable中的单元格编辑器.它适用于标准DefaultCellEditor(即开始点击次数等于2)。现在我希望只需单击一次即可编辑该列。所以我在我的代码中添加了一个cellEditor.setClickCountToStart(1);语句。这是我的SSCCE:importjava.awt.BorderLayout;importjava.awt.Dimension;importjavax.swing.DefaultCellEditor;importjavax.swing.JComboBox;importjavax.swing.JFrame;imp

java - 如何使excel单元格成为强制性的?

我正在尝试强制设置一些Excel单元格,以便在用户将它们留空时显示一条消息。Workbookworkbook=newXSSFWorkbook();Sheetsheet=workbook.createSheet("DataValidation");DataValidationHelperdataValidationHelper=sheet.getDataValidationHelper();DataValidationConstraintlengthConstraint=dataValidationHelper.createTextLengthConstraint(DataValidat

java - 如何将 JComboBox 添加到 JTable 单元格?

我正在尝试将JComponents添加到JTable单元格。我要实现CellRenderer还是CellEditor? 最佳答案 您需要的是一个自定义编辑器,它将返回JComboBox(或您要使用的任何组件)。你应该检查SuntutorialforJTable,它包含有关如何将JComboBox用作编辑器的示例。如果您还想将JComboBox用作渲染器,本教程也适用。 关于java-如何将JComboBox添加到JTable单元格?,我们在StackOverflow上找到一个类似的问题:

java - JTable 单元格编辑器数字格式

我需要在jTable中显示精确到小数点后两位的数字。为此,我创建了一个自定义单元格编辑器:publicclassNumberCellEditorextendsDefaultCellEditor{publicNumberCellEditor(){super(newJFormattedTextField());}publicComponentgetTableCellEditorComponent(JTabletable,Objectvalue,booleanisSelected,introw,intcolumn){JFormattedTextFieldeditor=(JFormattedT

java - 如何确定某行合并单元格

这是我目前所知道的:您使用方法sheet.getNumMergedRegions()获取特定工作表中合并区域的数量循环遍历每个计数并使用方法sheet.getMergedRegion(i)并分配给CellRangeAddress变量然后使用isInRange(rowIndex,colIndex)函数查看特定单元格是否是合并区域的一部分。但我想要完成的是:我想看看是否可以确定仅给定特定行的合并单元格。就像我有特定行一样,我只想知道在该行下找到的所有合并区域的数量。如果有人能就此事分享他们的想法或建议,我将永远感激不已。 最佳答案 这是

java - JTable 将单元格颜色设置为特定值

我正在尝试编写一种方法,针对给定的参数(值、颜色),在值等于cellValue的单元格的背景上设置颜色。我的方法实际做的是,它在整行单元格的背景上设置颜色,当我选择表格中的行时,我希望方法只在特定列设置颜色(其中cellValue等于value)每次调用该方法时。voidsetCellBackgroundColor(booleancellValue,finalColorcolor){List>data=tView.getTTableModel().getData();for(introw=0;row 最佳答案 whenIselect

在使用SUMIF函数时,如何将另一个单元格在同一工作簿内的单独工作表中的通配符?

我试图将来自不同工作表的单元格中的内容作为我在其他地方的SUMIF函数中的通配符标准的一部分。这是我所拥有的,它正在返回正确的值:=SUMIF('PASTESAPDATAHERE'!H:H,'PASTESAPDATAHERE'!L:L,D23&"*")我想在D23中使用相同的值,但要从单独的工作表中存储:=SUMIF('PASTESAPDATAHERE'!H:H,'PASTESAPDATAHERE'!L:L,'MarchSAPCoreData'!A18&"*")第二次尝试返回值0。任何帮助将不胜感激!看答案“查看数据,请确保没有空格或其他不可见字符可能会抛弃比赛。如果匹配是数字或日期,请确保两