Qt5.10为什么TableView里不能通过按钮添加新的一行数据?

为什么TableView里不能通过按钮添加新的一行

代码如下:

    QSqlTableModel *docInfoViewModel;

按钮的槽

 void on_addStaff_clicked();

设置model的代码


   docInfoViewModel=new QSqlTableModel(ui->tableView);

   docInfoViewModel->setTable("Staff_Info"); 

   ui->tableView->setModel(docInfoViewModel);

   docInfoViewModel->select();

   docInfoViewModel->setHeaderData(0,Qt::Horizontal,"编号");
   docInfoViewModel->setHeaderData(1,Qt::Horizontal,"姓名");

   docInfoViewModel->setHeaderData(2,Qt::Horizontal,"学历");

   docInfoViewModel->setHeaderData(3,Qt::Horizontal,"职称");

   docInfoViewModel->setHeaderData(4,Qt::Horizontal,"科室");
   docInfoViewModel->setHeaderData(5,Qt::Horizontal,"专长");

按钮的槽函数如下

void root_admin::on_addStaff_clicked()
{

    QSqlRecord staff_Record=docInfoViewModel->record();
    int docinfoRow=docInfoViewModel->rowCount();
    docInfoViewModel->insertRecord(docinfoRow,staff_Record);
}

ui界面如下

图片说明

1个回答

问题已解决,重新构建了一次项目以后就可以了,可还是不清楚为什么会导致这个情况,望大神们指出原因

偶尔还是不行,重新构建都无法实现添加数据

求解决方法

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
qt5.5执行ui->tableView->setModel(model)提示意外停止
![图片说明](https://img-ask.csdn.net/upload/201602/16/1455629104_646554.png) qt5.5使用QSQLTE,使用QSqlTableModel查询数据库,一旦执行让tableview中显示数据库数据的语句ui->tableView->setModel(model), 运行就提示已停止工作,求解。 ui界面只有一个tableview。 工程文件结构如图: ![](https://img-ask.csdn.net/upload/201602/16/1455629593_708344.png) 代码如下: 1.widget.cpp中 ``` #include "widget.h" #include "ui_widget.h" Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { model = new QSqlTableModel(this); model->setTable("student"); model->setEditStrategy(QSqlTableModel::OnManualSubmit); model->select(); ui->tableView->setModel(model); /*QTableView *view = new QTableView; view->setModel(model); view->show();*/ //ui->setupUi(this); } Widget::~Widget() { delete ui; } ``` 2.main.cpp ``` #include "widget.h" #include <QApplication> #include "database.h" #include <QTextCodec> int main(int argc, char *argv[]) { QApplication a(argc, argv); QTextCodec::setCodecForLocale(QTextCodec::codecForLocale()); if(!createConnetion()) return 1; Widget w; w.show(); return a.exec(); } ``` 3.database.h中 ``` #ifndef DATABASE_H #define DATABASE_H #include <QSqlDatabase> #include <QSqlQuery> #include <QObject> static bool createConnetion() { QSqlDatabase db= QSqlDatabase::addDatabase("QSQLITE"); db.setDatabaseName("database.db"); if(!db.open()) return false; QSqlQuery query; query.exec(QObject::tr("create table student (id int primary key,name vchar)")); query.exec(QObject::tr("insert into student values (0,'fece0')")); query.exec(QObject::tr("insert into student values (1,'fece1')")); query.exec(QObject::tr("insert into student values (2,'fece2')")); return true; } #endif // DATABASE_H ``` 4.widget.h中 ``` #ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include <QSqlTableModel> namespace Ui { class Widget; } class Widget : public QWidget { Q_OBJECT public: explicit Widget(QWidget *parent = 0); ~Widget(); private: Ui::Widget *ui; QSqlTableModel *model; }; #endif // WIDGET_H ```
Qt4.7.0的表格移除一行后垂直表头无法移除?
Qt的表格移除一行后,垂直表头无法相应地移除,我用的是4.7.0的版本,试了TableWidget和TableView都不行,是这个版本本身的Bug吗?怎么解决?
#qml使用TableView动态加载表,求大神帮助???
为什么加载第一个表的时候可以显示全部,第二次选择加载另一个表后更新的内容没写上去?(第一个表原有的列就会更新,新增加的就不会写进去) 第一次显示的表: ![图片说明](https://img-ask.csdn.net/upload/201912/12/1576113858_758108.png) 第二次显示的表: ![图片说明](https://img-ask.csdn.net/upload/201912/12/1576113912_333256.png) import QtQuick 2.0 import QtQuick.Controls 2.7 import Qt.labs.platform 1.1 import QtQuick.Controls 1.4 import QtCharts 2.3 TableView{ id:resultTab width:560 height: 620 anchors.top:parent.top anchors.topMargin:60 anchors.left: parent.left anchors.leftMargin: 30 model: tablemode } ListModel {//单表的行数据 id: tablemode } function bigTab(name,msge){ var msg=JSON.parse(msge) var count = resultTab.columnCount; tablemode.clear(); resultTab.model.clear() for(var f=0;f<count ;f++){ resultTab.removeColumn(0) } // 循环添加TableViewColumn for( var i=0;i<msg.title.length;i++){ var str = 'import QtQuick 2.7; import QtQuick.Controls 1.4; TableViewColumn {role: "' + msg.title[i] + '"; title: "' + msg.title[i] + '"; width: 100 ;resizable:false }'; resultTab.addColumn(Qt.createQmlObject(str,resultTab,"dynamicSnippet1")); } for( var u=0;u<msg.data.length;u++){ var json = new Object for( var j=0;j<msg.data[u].length;j++){ var role = msg.title[j] json[role]=msg.data[u][j] if (typeof(msg.data[u][j]) === "number"){ json[role]=msg.data[u][j] .toFixed(3) } json[role]= json[role].toString() } tablemode.append(json) } }
Qt tableview刷新之后仍然选中某一行
Qt的tableView界面有个定时器自动刷新数据,因为请求数据比较频繁,三秒刷新一次,但是选中某一行之后右键菜单时如果正巧碰上刷新,之前选中的那行就不会被选中了,我想刷新之后始终都是选中这一行的,请问有什么好办法能解决这个问题吗
xcode6.4的tableview不显示title,怎么让它显示?
tableview不显示titile那块部分,一开始发现在navigation controller连在一起的tableview里,storyboard看着明明是有的,可是运行模拟器的时候,就是显示不出来。 ![这是sroryboard里的tableview](https://img-ask.csdn.net/upload/201508/11/1439271024_632453.jpg) ![这是模拟器运行出来的效果,那块title的地方就是死活不出来](https://img-ask.csdn.net/upload/201508/11/1439271131_150291.jpg) 菜鸟入门学习xcode中,有谁能帮我解答吗?
Qt tableview的设置一个cell为被选中状态
我想在tableview中添加一个查找功能,查找之后返回一个index,然后用setCurrentIndex设置,但是跟鼠标点击过去的效果不一样,如何实现当前索引为鼠标点击的效果
关于QT的tableview 选中行的问题,求大神解答。
求问一下,我创建了一个tableview,添加了一些Item。问题是当前无选中行,但是我右键菜单弹出之后会发送一个信号去自动选择第一行第一个Item,我很迷惑,找不到怎么解决。求大神相助。
QT tableview怎么设置某一列最大值颜色
QT tableview怎么设置某一列最大值颜色,根据获取的值来设置某一列最大值颜色
centos下用QT对.xls格式进行导入与导出,用到什么第三方的库呢?
例如导入,即将一个已存在的execl文件进行读写,然后在qt的ui中调用tableview去显示; 例如导出,将tableview中的值生成一个execl文件。
javafx 的 TableView 报错 lang.NullPointerException
如果把含有 TableView 的 fxml ( personnel.fxml ),放在第一个 Stage 窗口显示,则 TableView 中的内容能够正常显示。但是如果放在其他 Stage 窗口,则会报 NullPointerException。 ``` java.lang.NullPointerException at view.MyController.showList(MyController.java:135) at view.MyController.personnel(MyController.java:114) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at sun.reflect.misc.Trampoline.invoke(Unknown Source) at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at sun.reflect.misc.MethodUtil.invoke(Unknown Source) at javafx.fxml.FXMLLoader$MethodHandler.invoke(FXMLLoader.java:1769) at javafx.fxml.FXMLLoader$ControllerMethodEventHandler.handle(FXMLLoader.java:1657) at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:49) at javafx.event.Event.fireEvent(Event.java:198) at javafx.scene.Node.fireEvent(Node.java:8411) at javafx.scene.control.Button.fire(Button.java:185) at com.sun.javafx.scene.control.behavior.ButtonBehavior.mouseReleased(ButtonBehavior.java:182) at com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:96) at com.sun.javafx.scene.control.skin.BehaviorSkinBase$1.handle(BehaviorSkinBase.java:89) at com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:218) at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54) at javafx.event.Event.fireEvent(Event.java:198) at javafx.scene.Scene$MouseHandler.process(Scene.java:3757) at javafx.scene.Scene$MouseHandler.access$1500(Scene.java:3485) at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1762) at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2494) at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:394) at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:295) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$353(GlassViewEventHandler.java:432) at com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(QuantumToolkit.java:389) at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:431) at com.sun.glass.ui.View.handleMouseEvent(View.java:555) at com.sun.glass.ui.View.notifyMouse(View.java:937) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$147(WinApplication.java:177) at java.lang.Thread.run(Unknown Source) ``` TalbeView 定义: ``` Mycontroller.java package view; import java.net.URL; import java.util.ResourceBundle; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.fxml.FXMLLoader; import javafx.fxml.Initializable; import javafx.scene.Parent; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.control.PasswordField; import javafx.scene.control.TableColumn; import javafx.scene.control.TableView; import javafx.scene.control.TextField; import javafx.scene.control.cell.PropertyValueFactory; import javafx.stage.Stage; import model.*; import control.*; public class MyController implements Initializable { @FXML private Button login; @FXML private TextField user; @FXML private PasswordField password; @FXML private Button okay,personnel,department; @FXML private TableView<Person> PersonTable; @FXML private TableColumn ID; @FXML private TableColumn NAME; @Override public void initialize(URL location, ResourceBundle resources) { // TODO (don't really need to do anything here). } // When user click on myButton // this method will be called. public void login(ActionEvent event) {//登录界面 if (false) { Stage LoginFailed = new Stage(); try { // Read file fxml and draw interface. Parent root = FXMLLoader.load(getClass() .getResource("/view/LoginFailed.fxml")); LoginFailed.setTitle("登陆失败"); LoginFailed.setScene(new Scene(root)); LoginFailed.show(); } catch(Exception e) { e.printStackTrace(); } } else { Stage primaryStage = (Stage)login.getScene().getWindow(); primaryStage.close(); Stage ChooseTable = new Stage(); try { // Read file fxml and draw interface. Parent root = FXMLLoader.load(getClass() .getResource("/view/ChooseTable.fxml")); ChooseTable.setTitle("请选择您要管理的表格"); ChooseTable.setScene(new Scene(root)); ChooseTable.show(); } catch(Exception e) { e.printStackTrace(); } } } public void okay(ActionEvent event) { Stage LoginFailed= (Stage)okay.getScene().getWindow(); LoginFailed.close(); } public void personnel(ActionEvent event) { Stage choose= (Stage)personnel.getScene().getWindow(); choose.close(); Stage personnel = new Stage(); try { // Read file fxml and draw interface. //showList(); Parent root = FXMLLoader.load(getClass() .getResource("/view/Sample.fxml")); personnel.setTitle("人员管理"); personnel.setScene(new Scene(root)); showList();//显示表格 personnel.show(); } catch(Exception e) { e.printStackTrace(); } } public void department(ActionEvent event) { Stage choose= (Stage)okay.getScene().getWindow(); choose.close(); } public void showList(){ ObservableList<Person> list = FXCollections.observableArrayList(); //ObservableList<User> list = FXCollections.observableArrayList(); Person p1 = new Person(); //User user = new User();//构建值对象 p1.setId("小六"); p1.setName("123"); //colUsername.setCellValueFactory(new PropertyValueFactory("id"));//映射 ID.setCellValueFactory(new PropertyValueFactory("id")); NAME.setCellValueFactory(new PropertyValueFactory("name")); list.add(p1); //list 添加值对象 PersonTable.setItems(list); //tableview 添加 list } } Person.java package model; public class Person { private String id; private String name; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } ``` Main.java ``` package control; import javafx.application.Application; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.stage.Stage; import model.Person; import javafx.scene.Scene; import javafx.scene.layout.BorderPane; import javafx.application.Application; import javafx.fxml.FXMLLoader; import javafx.scene.Parent; import javafx.scene.Scene; import javafx.stage.Stage; public class Main extends Application { @Override public void start(Stage primaryStage) { try { // Read file fxml and draw interface. Parent root = FXMLLoader.load(getClass() .getResource("/view/MainScene.fxml")); primaryStage.setTitle("My Application"); primaryStage.setScene(new Scene(root)); primaryStage.show(); } catch(Exception e) { e.printStackTrace(); } } public static void main(String[] args) { launch(args); } } package control; import javafx.application.Application; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.stage.Stage; import model.Person; import javafx.scene.Scene; import javafx.scene.layout.BorderPane; import javafx.application.Application; import javafx.fxml.FXMLLoader; import javafx.scene.Parent; import javafx.scene.Scene; import javafx.stage.Stage; public class Main extends Application { @Override public void start(Stage primaryStage) { try { // Read file fxml and draw interface. Parent root = FXMLLoader.load(getClass() .getResource("/view/MainScene.fxml")); primaryStage.setTitle("My Application"); primaryStage.setScene(new Scene(root)); primaryStage.show(); } catch(Exception e) { e.printStackTrace(); } } public static void main(String[] args) { launch(args); } } ``` personnel.fmxl ``` <?xml version="1.0" encoding="UTF-8"?> <?import javafx.scene.*?> <?import javafx.scene.control.*?> <?import java.lang.*?> <?import javafx.scene.layout.*?> <?import javafx.scene.layout.AnchorPane?> <AnchorPane prefHeight="309.0" prefWidth="349.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" fx:controller="view.MyController"> <children> <SplitPane dividerPositions="0.30547550432276654" layoutY="-4.0" prefHeight="315.0" prefWidth="349.0"> <items> <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="160.0" prefWidth="100.0"> <children> <Group> <children> <Button layoutX="24.0" layoutY="204.0" mnemonicParsing="false" text="delete" /> <Button layoutX="24.0" layoutY="157.0" mnemonicParsing="false" prefHeight="23.0" prefWidth="59.0" text="add" /> <Button layoutX="24.0" layoutY="116.0" mnemonicParsing="false" prefHeight="23.0" prefWidth="56.0" text="alter" /> <Button layoutX="24.0" layoutY="74.0" mnemonicParsing="false" text="lookup" /> </children> </Group> </children> </AnchorPane> <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="204.0" prefWidth="266.0"> <children> <TableView fx:id="PersonTable" prefHeight="313.0" prefWidth="238.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0"> <columns> <TableColumn fx:id="ID" prefWidth="85.0" text="ID" /> <TableColumn fx:id="NAME" prefWidth="152.0" text="NAME" /> </columns> </TableView> </children> </AnchorPane> </items> </SplitPane> </children> </AnchorPane> ```
iOS tableView.tableHeaderView 怎样改变跟随与不跟随cell滑动.
tableView.tableHeaderView=view; 是跟随cell一起滚动的, 我想将cell滚动一定位置关闭headerView跟随滚动.
cocos2dx3.2 tableview的问题!!!
cocos2dx3.2初学者,想使用tableview, class HelloWorld : public cocos2d::Layer,TableViewDataSource,TableViewDelegate 下面的CREATE_FUNC(HelloWorld)一直报错 ~Allocating an object of abstract class type'HelloWorld' 求解决办法。。。
xcode7.1.1的下划线怎么不见了,而且在拖动的时候才出现,并不停得闪动
xcode7.1.1tableview的下划线怎么不见了,而且在拖动的时候才出现,并不停得闪动。这是怎么回事呢?求大神解答
iOS 的如何用scrollView来添加视图控制器里面的tableView?
![我想要实现一个类似tabBar的功能,但是可以滑动显示视图控制器的,像网易新闻和百度新闻那样,但是用scrollView添加视图控制器的view之后,里面的tableView我滑动一下它内容就不显示了,不知道怎么回事?有人知道吗?大神帮忙回答一下行吗?谢谢!图片说明](https://img-ask.csdn.net/upload/201511/20/1448020905_803116.png) 麻烦大神帮我看看是哪里错了? ![图片说明](https://img-ask.csdn.net/upload/201511/20/1448021138_637961.png) ![图片说明](https://img-ask.csdn.net/upload/201511/20/1448021053_700990.jpg)
iOS TableView的FooterView添加的按钮转场后出问题
![图片说明](https://img-ask.csdn.net/upload/201609/01/1472723775_967696.png)t这是ableView的footView,我在模拟器上点+的按钮转场回来后+还可以点,但是在真机上面转场回来后就不能点了,要刷新下整个界面才能点,有人碰过这奇葩问题么
QT中的tableview如何删除指定单元格的值?
如题 QT中的tableview如何删除指定单元格的值? QT中的tableview如何删除指定单元格的值?
JAVAFX FXML中找不到TableColumn绑定的方法
如题,JAVAFX FXML中找不到TableColumn绑定的方法 EditAssignmentGradesController的主要相关代码片段如下 ``` package sample; import java.util.Map; import Model.Record; import Model.Student; import Model.Subject; import Model.Score; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.fxml.FXML; import javafx.scene.control.Label; import javafx.scene.control.TableColumn; import javafx.scene.control.TableView; import javafx.scene.control.TextArea; import javafx.scene.control.cell.TextFieldTableCell; public class EditAssignmentGradesController { @FXML private TableView<Record> recordTable; @FXML private TableColumn<Record, String> nameColumn; @FXML private TableColumn<Record, String> gradeColumn; @FXML private TableColumn<Record, String> bonusColumn; @FXML void onEditName(TableColumn.CellEditEvent<String, String> ddd) { Record record = recordTable.getSelectionModel().getSelectedItem(); record.setName(ddd.getNewValue()); } @FXML private void onEditPoints(TableColumn.CellEditEvent<Record, String> pointsCellEdited) { Record record = recordTable.getSelectionModel().getSelectedItem(); record.setPoints(pointsCellEdited.getNewValue()); } @FXML private Label assignmentLabel; @FXML private Label maxscoreLabel; @FXML private TextArea commentsArea; private int gradeWay; private Subject subject; private ObservableList<Record> recordData = FXCollections.observableArrayList();; ``` FXML中这一段一直显示 The controller 'EditAssignmentGradesController' has no event slot 'onEditName' ![图片说明](https://img-ask.csdn.net/upload/201912/07/1575675448_59692.png) 整体代码如下 ``` <?xml version="1.0" encoding="UTF-8"?> <?import javafx.scene.control.Button?> <?import javafx.scene.control.Label?> <?import javafx.scene.control.RadioButton?> <?import javafx.scene.control.TableColumn?> <?import javafx.scene.control.TableView?> <?import javafx.scene.control.TextArea?> <?import javafx.scene.layout.AnchorPane?> <AnchorPane prefHeight="400.0" prefWidth="400.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="sample.EditAssignmentGradesController"> <children> <Label layoutX="39.0" layoutY="43.0" text="Assignment:" /> <Label fx:id="assignmentLabel" layoutX="113.0" layoutY="43.0" text="Label" /> <Label layoutX="178.0" layoutY="43.0" text="How is this grade calculated?" /> <Label layoutX="39.0" layoutY="70.0" text="Max Score:" /> <Label fx:id="maxscoreLabel" layoutX="113.0" layoutY="70.0" text="Label" /> <TableView fx:id="recordTable" layoutX="41.0" layoutY="100.0" prefHeight="130.0" prefWidth="300.0"> <columns> <TableColumn fx:id="nameColumn" onEditCommit="#onEditName" prefWidth="75.0" sortable="false" style="-fx-background-color: #66CCFF;" text="Student Name" /> <TableColumn fx:id="gradeColumn" onEditCommit="#onEditPoints" prefWidth="75.0" sortable="false" style="-fx-background-color: #66CCFF;" text="Grade" /> <TableColumn fx:id="bonusColumn" prefWidth="75.0" sortable="false" style="-fx-background-color: #66CCFF;" text="Bonus" /> </columns> <columnResizePolicy> <TableView fx:constant="CONSTRAINED_RESIZE_POLICY" /> </columnResizePolicy> </TableView> <Label layoutX="41.0" layoutY="263.0" text="Comments:" /> <TextArea fx:id="commentsArea" layoutX="113.0" layoutY="253.0" prefHeight="80.0" prefWidth="222.0" /> <Button layoutX="309.0" layoutY="361.0" mnemonicParsing="false" onAction="#handleSave" text="Save" /> <RadioButton layoutX="148.0" layoutY="70.0" mnemonicParsing="false" onAction="#percentWay" text="Percent" /> <RadioButton layoutX="216.0" layoutY="70.0" mnemonicParsing="false" onAction="#lostWay" text="Points Lost" /> <RadioButton layoutX="302.0" layoutY="70.0" mnemonicParsing="false" onAction="#rawWay" text="Raw Points" /> </children> </AnchorPane> ``` 当去除onEditName()的参数的时候,FXML文件里就不会报错,但是加上就会报错,试了半天不知道原因,恳请各位指点
Javafx TableView如何添加序号列呢?
accountColumn.setCellValueFactory(cellData -> cellData.getValue().accountProperty()); passwordColumn.setCellValueFactory(cellData -> cellData.getValue().passwordProperty()); serverColumn.setCellValueFactory(cellData -> cellData.getValue().serverProperty()); roleNameColumn.setCellValueFactory(cellData -> cellData.getValue().roleNameProperty()); 因为TableView涉及删除条目。不可能把序号放在model类里面做成一个单独的成员。这是四种其他属性。已经添加到了TableView中。但是序号应该怎么添加呢?
相见恨晚的超实用网站
相见恨晚的超实用网站 持续更新中。。。
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
有哪些让程序员受益终生的建议
从业五年多,辗转两个大厂,出过书,创过业,从技术小白成长为基层管理,联合几个业内大牛回答下这个问题,希望能帮到大家,记得帮我点赞哦。 敲黑板!!!读了这篇文章,你将知道如何才能进大厂,如何实现财务自由,如何在工作中游刃有余,这篇文章很长,但绝对是精品,记得帮我点赞哦!!!! 一腔肺腑之言,能看进去多少,就看你自己了!!! 目录: 在校生篇: 为什么要尽量进大厂? 如何选择语言及方...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小型人工智障。 知识可以运用在不同地方,不一定非是天气预报。
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
英特尔不为人知的 B 面
从 PC 时代至今,众人只知在 CPU、GPU、XPU、制程、工艺等战场中,英特尔在与同行硬件芯片制造商们的竞争中杀出重围,且在不断的成长进化中,成为全球知名的半导体公司。殊不知,在「刚硬」的背后,英特尔「柔性」的软件早已经做到了全方位的支持与支撑,并持续发挥独特的生态价值,推动产业合作共赢。 而对于这一不知人知的 B 面,很多人将其称之为英特尔隐形的翅膀,虽低调,但是影响力却不容小觑。 那么,在...
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
刷了几千道算法题,这些我私藏的刷题网站都在这里了!
遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网...
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
JavaScript 为什么能活到现在?
作者 | 司徒正美 责编 |郭芮 出品 | CSDN(ID:CSDNnews) JavaScript能发展到现在的程度已经经历不少的坎坷,早产带来的某些缺陷是永久性的,因此浏览器才有禁用JavaScript的选项。甚至在jQuery时代有人问出这样的问题,jQuery与JavaScript哪个快?在Babel.js出来之前,发明一门全新的语言代码代替JavaScript...
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Python 编程开发 实用经验和技巧
Python是一门很灵活的语言,也有很多实用的方法,有时候实现一个功能可以用多种方法实现,我这里总结了一些常用的方法和技巧,包括小数保留指定位小数、判断变量的数据类型、类方法@classmethod、制表符中文对齐、遍历字典、datetime.timedelta的使用等,会持续更新......
吐血推荐珍藏的Visual Studio Code插件
作为一名Java工程师,由于工作需要,最近一个月一直在写NodeJS,这种经历可以说是一部辛酸史了。好在有神器Visual Studio Code陪伴,让我的这段经历没有更加困难。眼看这段经历要告一段落了,今天就来给大家分享一下我常用的一些VSC的插件。 VSC的插件安装方法很简单,只需要点击左侧最下方的插件栏选项,然后就可以搜索你想要的插件了。 下面我们进入正题 Material Theme ...
实战:如何通过python requests库写一个抓取小网站图片的小爬虫
有点爱好的你,偶尔应该会看点图片文字,最近小网站经常崩溃消失,不如想一个办法本地化吧,把小照片珍藏起来! 首先,准备一个珍藏的小网站,然后就可以开始啦! 第一步 我们先写一个获取网站的url的链接,因为url常常是由page或者,其他元素构成,我们就把他分离出来,我找到的网站主页下有图片区 图片区内有标题页,一个标题里有10张照片大概 所以步骤是: 第一步:进入图片区的标题页 def getH...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
Python 植物大战僵尸代码实现(2):植物卡片选择和种植
这篇文章要介绍的是: - 上方植物卡片栏的实现。 - 点击植物卡片,鼠标切换为植物图片。 - 鼠标移动时,判断当前在哪个方格中,并显示半透明的植物作为提示。
相关热词 c# 引用mysql c#动态加载非托管dll c# 两个表数据同步 c# 返回浮点json c# imap 链接状态 c# 漂亮字 c# 上取整 除法 c#substring c#中延时关闭 c#线段拖拉
立即提问