Load "guilib.ring"
New qApp {
win1 = new qMainWindow() {
setGeometry(100,100,1100,370)
setwindowtitle("Using QTableWidget")
Table1 = new qTableWidget(win1) {
setrowcount(10) setcolumncount(10)
setGeometry(0,0,800,400)
setselectionbehavior(QAbstractItemView_SelectRows)
for x = 1 to 10
for y = 1 to 10
item1 = new qtablewidgetitem("R"+X+"C"+Y)
setitem(x-1,y-1, item1)
next
next
cmb = new QComboBox(Table1) {
alist = ["one","two","three","four","five"]
for x in aList additem(x,0) next }
setCellWidget(5, 5, cmb)
}
setcentralwidget(table1)
show()
}
exec()
}
Load "guilib.ring"
New qApp
{
win1 = new qMainWindow()
{
setGeometry(100,100,1100,370)
setwindowtitle("Using QTableWidget")
Table1 = new qTableWidget(win1)
{
setrowcount(10) setcolumncount(10)
setGeometry(0,0,800,400)
setSelectionMode(QAbstractItemView_SelectItems)
for x = 1 to 10
for y = 1 to 10
item1 = new qtablewidgetitem("R"+X+"C"+Y)
setitem(x-1,y-1, item1)
next
next
cmb = new QComboBox(Table1)
{
alist = ["one","two","three","four","five"]
for x in aList
additem(x,0)
next
}
setCellWidget(5, 5, cmb)
}
setcentralwidget(table1)
myfilter = new qallevents(win1)
myfilter.setKeyPressEvent("pKeyPress()")
installeventfilter(myfilter)
show()
}
exec()
}
func pKeyPress
nKeyCode = myfilter.getkeycode()
#see "keycode " + nKeyCode + nl
if nKeyCode = 16777220
Table1 {
if currentcolumn() = ColumnCount()-1
setcurrentcell(currentrow()+1, 0)
else
setcurrentcell( currentrow() , currentcolumn() + 1)
ok
}
ok
if currentrow() = rowcount()-1 and currentcolumn() = columncount()-1
setcurrentcell(0, 0)
else
if currentcolumn() = columncount()-1
setcurrentcell(currentrow()+1, 0)
else
setcurrentcell( currentrow() , currentcolumn() + 1)
ok ok
}
ok
Load "guilib.ring"
New qApp { win1 = new qMainWindow() { setGeometry(100,100,1100,370) setwindowtitle("Using QTableWidget") Table1 = new qTableWidget(win1) { setrowcount(10) setcolumncount(10) setGeometry(0,0,800,400) setSelectionMode(QAbstractItemView_SelectItems)
for x = 1 to 10 for y = 1 to 10 item1 = new qtablewidgetitem("R"+X+"C"+Y) setitem(x-1,y-1, item1) next next
cmb = new QComboBox(Table1) { alist = ["one","two","three","four","five"] for x in aList additem(x, 0) next }
btn1 = new QPushButton(win1){ settext("First cell") setClickEvent("pFirst()") }
btn2 = new QPushButton(win1){ settext("Last cell") setClickEvent("pLast()") }
setCellWidget(5, 5, cmb) setCellWidget(5, 6, btn1) setCellWidget(5, 7, btn2)
}
setcentralwidget(table1) myfilter = new qallevents(win1) myfilter.setKeyPressEvent("pKeyPress()") installeventfilter(myfilter) show() } exec()}
func pKeyPress nKeyCode = myfilter.getkeycode()
if nKeyCode = 16777220 Table1 { if currentrow() = rowcount()-1 and currentcolumn() = columncount()-1 setcurrentcell(0, 0) else if currentcolumn() = columncount()-1 setcurrentcell(currentrow()+1, 0) else setcurrentcell( currentrow() , currentcolumn() + 1) ok ok } ok
func pFirst Table1.setcurrentcell(0, 0) see Table1.currentrow() + nl see Table1.currentcolumn() + nl + nl
func pLast Table1.setcurrentcell(Table1.rowcount()-1, Table1.columncount()-1) see Table1.currentrow() + nl see Table1.currentcolumn() + nl + nl
Table1.setfocus(1) Table1.setcurrentcell(0, 0)
func pLast Table1.setfocus(100) Table1.setcurrentcell(Table1.rowcount()-1, Table1.columncount()-1)
btn3 = new QPushButton(win1){ settext("Go to Cell") setClickEvent("pEdit()") }
lineedit1 = new qlineedit(win1) { settext("Go to Row") setalignment(Qt_AlignHCenter)
} lineedit2 = new qlineedit(win1) { settext("Go to Column") setalignment(Qt_AlignHCenter)
}
setCellWidget(5, 5, cmb) setCellWidget(5, 6, btn1) setCellWidget(5, 7, btn2)
setCellWidget(6, 5, lineedit1) setCellWidget(6, 6, lineedit2) setCellWidget(6, 7, btn3)
Table1.setcurrentcell(Table1.rowcount()-1, Table1.columncount()-1)
func pEdit lineedit1{row = text()} lineedit2{column = text()} Table1.setfocus(1) Table1.setcurrentcell(row-1, column-1)
setitemChangedEvent("pPress()")
Load "guilib.ring"
New qApp { win1 = new qMainWindow() { setGeometry(100,100,1100,370) setwindowtitle("Using QTableWidget") Table1 = new qTableWidget(win1) { setrowcount(10) setcolumncount(10) setGeometry(0,0,800,400)
setSelectionMode(QAbstractItemView_SelectItems)
setitemChangedEvent("pPress()")
- Idézett szöveg elrejtése -
}
setcentralwidget(table1) myfilter = new qallevents(win1) myfilter.setKeyPressEvent("pKeyPress()") installeventfilter(myfilter) show() } exec()}
func pKeyPress nKeyCode = myfilter.getkeycode() if nKeyCode = 16777220 Table1 { if currentrow() = rowcount()-1 and currentcolumn() = columncount()-1 setcurrentcell(0, 0) else if currentcolumn() = columncount()-1 setcurrentcell(currentrow()+1, 0) else setcurrentcell( currentrow() , currentcolumn() + 1) ok ok } ok
func pFirst Table1.setfocus(1) Table1.setcurrentcell(0, 0)
func pLast Table1.setfocus(100)
Table1.setcurrentcell(Table1.rowcount()-1, Table1.columncount()-1)
func pEdit lineedit1{row = text()} lineedit2{column = text()}
Table1.setfocus(1) Table1.setcurrentcell(row-1, column-1)
func pPress
Table1 {
if currentrow() = rowcount()-1 and currentcolumn() = columncount()-1
setcurrentcell(0, 0)
but currentrow() = rowcount()-1
setcurrentcell( 0 , currentcolumn() + 1)
else
setcurrentcell( currentrow()+1 , currentcolumn()) ok
}
setreturnPressedEvent("pPress()")
"1- Methods to move the focus from the left to the right cell after the Enter event and change lines after the last column."
setcentralwidget(table1) show() } exec()}
func pFirst
Table1.setfocus(true) Table1.setcurrentcell(0, 0)
func pLast Table1.setfocus(true)
Table1.setcurrentcell(Table1.rowcount()-1, Table1.columncount()-1)
func pEdit lineedit1{row = text()} lineedit2{column = text()}
Table1.setfocus(true) Table1.setcurrentcell(row-1, column-1)
func pPress
Table1 { if currentrow() = rowcount()-1 and currentcolumn() = columncount()-1 setcurrentcell(0, 0)
but currentrow() = rowcount()-1 setcurrentcell( 0 , currentcolumn() + 1) else setcurrentcell( currentrow()+1 , currentcolumn()) ok }
Hello Mahmoud FayedIt's great what you has accomplished to do with programming language, making with few lines of code will do great things.You could tell me some methods to manage QTableWidget class, the most important:
1- Methods to move the focus from the left to the right cell after the Enter event and change lines after the last column.
setreturnPressedEvent("pPress()")
}
lineedit2 = new qlineedit(win1) { settext("Go to Column") setalignment(Qt_AlignHCenter) }
setCellWidget(5, 5, cmb) setCellWidget(5, 6, btn1) setCellWidget(5, 7, btn2) setCellWidget(6, 5, lineedit1) setCellWidget(6, 6, lineedit2) setCellWidget(6, 7, btn3) }
setcentralwidget(table1)
myfilter = new qallevents(win1) myfilter.setKeyPressEvent("pKeyPress()") installeventfilter(myfilter)
show() } exec()
}
func pKeyPress nKeyCode = myfilter.getkeycode() if nKeyCode = 16777220
Table1 { if currentrow() = rowcount()-1 and currentcolumn() = columncount()-1 setcurrentcell(0, 0)
else if currentrow() = rowcount()-1 setcurrentcell(0, currentcolumn()+1)
else setcurrentcell( currentrow()+1 , currentcolumn())
ok ok } ok
func pFirst Table1.setfocus(true) Table1.setcurrentcell(0, 0)
func pLast Table1.setfocus(true) Table1.setcurrentcell(Table1.rowcount()-1, Table1.columncount()-1)
func pEdit lineedit1{row = text()} lineedit2{column = text()} Table1.setfocus(true) Table1.setcurrentcell(row-1, column-1)
func pPress Table1 { if currentrow() = rowcount()-1 and currentcolumn() = columncount()-1 setcurrentcell(0, 0) but currentrow() = rowcount()-1 setcurrentcell( 0 , currentcolumn() + 1) else setcurrentcell( currentrow()+1 , currentcolumn()) ok }
Load "guilib.ring"
New qApp {
win1 = new qMainWindow() {
setGeometry(100,100,1100,370) setwindowtitle("Using QTableWidget")
Table1 = new qTableWidget(win1) {
setrowcount(10) setcolumncount(5) setGeometry(0,0,800,400) setselectionbehavior(QAbstractItemView_SelectRows)
for x = 1 to 10
for y = 1 to 5
item1 = new qtablewidgetitem("R"+X+"C"+Y) setitem(x-1,y-1,item1) next next
SetColumnWidth(0,200) SetColumnWidth(1,50) SetColumnWidth(2,50) SetColumnWidth(3,100) SetColumnWidth(4,100) }
setcentralwidget(table1) show()
}
exec()}
QTableWidget Class
void | setHorizontalHeaderItem(int column, QTableWidgetItem *item) |
void | setHorizontalHeaderLabels(const QStringList &labels) |
Load "guilib.ring"
New qApp { win1 = new qMainWindow() { setGeometry(100,100,1100,370) setwindowtitle("Using QTableWidget") Table1 = new qTableWidget(win1) {
setrowcount(10) setcolumncount(10) setGeometry(0,0,800,400) setSelectionMode(QAbstractItemView_SelectItems) setitemChangedEvent("pPress()")
for x = 1 to 10
for y = 1 to 10
item1 = new qtablewidgetitem("R"+X+"C"+Y)
setitem(x-1,y-1, item1) next next
cmb = new QComboBox(Table1) { alist = ["one","two","three","four","five"] for x in aList additem(x, 0) next }
btn1 = new QPushButton(win1){ settext("First cell") setClickEvent("pFirst()") }
btn2 = new QPushButton(win1){ settext("Last cell") setClickEvent("pLast()") }
btn3 = new QPushButton(win1){ settext("Go to Cell") setClickEvent("pEdit()") }
btn4 = new QPushButton(win1){ settext("Set row height") setClickEvent("setHeight()") }
btn5 = new QPushButton(win1){ settext("Set column width") setClickEvent("setWidth()")
}
lineedit1 = new qlineedit(win1) { settext("Go to Row") setalignment(Qt_AlignHCenter) setreturnPressedEvent("pPress()") }
lineedit2 = new qlineedit(win1) { settext("Go to Column") setalignment(Qt_AlignHCenter) }
lineedit3 = new qlineedit(win1) { settext("Set row") setalignment(Qt_AlignHCenter) }
lineedit4 = new qlineedit(win1) { settext("Row height") setalignment(Qt_AlignHCenter) }
lineedit5 = new qlineedit(win1) { settext("Set column") setalignment(Qt_AlignHCenter) }
lineedit6 = new qlineedit(win1) { settext("Row width") setalignment(Qt_AlignHCenter) }
setCellWidget(3, 5, cmb) setCellWidget(3, 6, btn1) setCellWidget(3, 7, btn2) setCellWidget(4, 5, lineedit1) setCellWidget(4, 6, lineedit2) setCellWidget(4, 7, btn3) setCellWidget(5, 5, lineedit3) setCellWidget(5, 6, lineedit4) setCellWidget(6, 5, lineedit5) setCellWidget(6, 6, lineedit6) setCellWidget(5, 7, btn4) setCellWidget(6, 7, btn5)
func setHeight Table1 { lineedit3 {setRow = number(text())} lineedit4 {setHeight = number(text())} setRowHeight(setRow, setHeight) }
func setWidth Table1 { lineedit5 {setColumn = number(text())} lineedit6 {setWidth = number(text())} setColumnWidth(setColumn, setWidth) }
Load "guilib.ring"
New qApp {
win1 = new qMainWindow() {
setGeometry(100,100,1100,370) setwindowtitle("Using QTableWidget")
Table1 = new qTableWidget(win1) {
setrowcount(10) setcolumncount(5) setGeometry(0,0,800,400) setselectionbehavior(QAbstractItemView_SelectRows)
for x = 1 to 10
for y = 1 to 5
item1 = new qtablewidgetitem("R"+X+"C"+Y)
setitem(x-1,y-1,item1) next next
SetColumnWidth(0,200) SetColumnWidth(1,50) SetColumnWidth(2,50) SetColumnWidth(3,100) SetColumnWidth(4,100)
mycols = new qstringlist() { append("one") append("Two") append("three") append("four") append("five") }
setHorizontalHeaderLabels(mycols) }
setcentralwidget(table1) show()
}
exec()}
GreetingsMarino Liranzo
setStyleSheet("QTableWidget::item{background-color: orange}")
Load "guilib.ring"
New qApp {
win1 = new qMainWindow() { setGeometry(100,100,1100,370) setwindowtitle("Using QTableWidget")
Table1 = new qTableWidget(win1) { setrowcount(10) setcolumncount(5) setGeometry(0,0,800,400) setselectionbehavior(QAbstractItemView_SelectRows)
setSelectionMode(QAbstractItemView_SelectItems)
for x = 1 to 10 for y = 1 to 5
item1 = new qtablewidgetitem("R"+X+"-C"+Y)
setitem(x-1,y-1,item1) next next
SetColumnWidth(0,200) SetColumnWidth(1,50) SetColumnWidth(2,50) SetColumnWidth(3,100) SetColumnWidth(4,100)
mycols = new qstringlist()
{
append("SYMBOL") append("NAME") append("GROUP") append("CHANGE") append("RATIO") } setHorizontalHeaderLabels(mycols) //setAlternatingRowColors(true)
setStyleSheet("QHeaderView::section { background-color: yellow }")
setStyleSheet("QTableWidget::item{background-color: orange}")
horizontalHeader().setStyleSheet("color: blue") verticalHeader().setStyleSheet("color: red") }
num1 =123
mystr =string(num1)
num1 = 123
mystr =""+num1
num1=123
myfunc(string(123))
num1 = 123
myfunc(""+num1)
item4 = new qtablewidgetitem("" + sortedList[x].Positionz) item5 = new qtablewidgetitem("" + sortedList[x].Changez)item6 = new qtablewidgetitem("" + sortedList[x].Ratioz)
- Why does WidgetItem not accept a numeric input ?
- Why does Ring stop working, when a number is entered into the widget item ?
myfilter.setMouseButtonReleaseEvent("pLib()")
Load "guilib.ring"win2 = NULLtable2=NULLNew qapp { win1 = new qMainWindow() { ###------------------------------------------------------ setGeometry(200,200,800,500) setwindowtitle("qMainWindow -- Win 1 Table 1") Table1 = new qTableWidget(win1) { setrowcount(6) setcolumncount(8) setGeometry(20,20,700,400) setselectionbehavior(QAbstractItemView_SelectRows) setSelectionMode(QAbstractItemView_SelectItems) SetColumnWidth(0,60) # SetColumnWidth(1,100) # SetColumnWidth(2,75) #
mycols = new qstringlist() { append("SYMBOL") append("NAME") append("GROUP")
}
setHorizontalHeaderLabels(mycols) setAlternatingRowColors(true)
setStyleSheet("QHeaderView::section { background-color: yellow }")
horizontalHeader().setStyleSheet("color: blue") verticalHeader().setStyleSheet("color: red")
cbList =[" ", "Sort-H", "Sort-L", "X", "Y"] for i = 1 to 3 for j = 1 to 3 cbo = new qCombobox(Table1) { for x in cbList addItem(x,0) next setcurrentIndexChangedEvent("pBox1(i, j)") } setCellWidget(i-1, j-1, cbo) next next
###--------------------- ### TABLE 2 Widget DisplayWidgetTable() }
###------------------------------------------- show() }
exec()}
###-----------------------------------------------### Widget TABLE 2
Func DisplayWidgetTable if isobject(win2) win2.activatewindow() returnok
win2 = new qwidget() { setGeometry(30,40,700,400) setwindowtitle("Display qwidget - Win2 Table2") Table2 = new qTableWidget(win2) { setrowcount(5) setcolumncount(6) setGeometry(75,50,800,600) setselectionbehavior(QAbstractItemView_SelectRows) setSelectionMode(QAbstractItemView_SelectItems) SetColumnWidth(0,60) # SetColumnWidth(1,100) # SetColumnWidth(2,75) #
mycols = new qstringlist() { append("ABLE") append("BAKER") append("CHARLIE") } setHorizontalHeaderLabels(mycols) setAlternatingRowColors(true) setStyleSheet("QHeaderView::section { background-color: aqua }")
horizontalHeader().setStyleSheet("color: blue") verticalHeader().setStyleSheet("color: red")
cb2List =[" ", "Look-M", "Look-N", "R", "S"] for i = 1 to 3 for j = 1 to 3 cbo = new qCombobox(Table2) { for x in cb2List addItem(x,0) next setcurrentIndexChangedEvent("pBox2(i, j)") } setCellWidget(i-1, j-1, cbo) next next } ###----------------------- show() }
### exec() return
###-----------------------
###------------------------------------ ### TABLE ! func pBox1 m, n Table1 { item = new qtablewidgetitem(cbo.currentText()) setitem(m-1, n-1, item) }
func pBox2 m, n Table1 { item = new qtablewidgetitem(cbo.currentText()) setitem(m-1, n-1, item) ###------------------------------------
######################################
See "pBox2Y " + cBox2Y.currentText() +nl
cBox2Y = NULL
Load "guilib.ring"
win2 = NULLtable2 = NULL
cbo = NULL
New qapp { win1 = new qMainWindow() { ###------------------------------------------------------ setGeometry(200,200,800,500) setwindowtitle("qMainWindow -- Win 1 Table 1 ABCD") Table1 = new qTableWidget(win1) { setrowcount(6) setcolumncount(8) setGeometry(20,20,700,400) setselectionbehavior(QAbstractItemView_SelectRows) setSelectionMode(QAbstractItemView_SelectItems) SetColumnWidth(0,60) # SetColumnWidth(1,100) # SetColumnWidth(2,75) #
mycols = new qstringlist() { append("SYMBOL") append("NAME") append("GROUP") } setHorizontalHeaderLabels(mycols) setAlternatingRowColors(true) setStyleSheet("QHeaderView::section { background-color: yellow }") horizontalHeader().setStyleSheet("color: blue") verticalHeader().setStyleSheet("color: red") cBox1List =[" ", "A", "B", "C", "D"]
for i = 1 to 3 for j = 1 to 3
cbo = new qCombobox(Table1) { for x in cBox1List addItem(x,0) next setcurrentIndexChangedEvent("pBox1(i, j)") }
setCellWidget(i-1, j-1, cbo) next next
for i = 1 to 3 for j = 1 to 3
cbo = new qCombobox(Table2) { for x in cBox2List addItem(x,0) next setcurrentIndexChangedEvent("pBox2(i, j)") }
setCellWidget(i-1, j-1, cbo) next next }
###----------------------- show() } ### exec() win2.activateWindow() ### <<< ACTIVATE HERE return ###-----------------------
func pBox1 m, n
Table1 { item = new qtablewidgetitem(cbo.currentText()) setitem(m-1, n-1, item)
see "func pBox1: " see " ABCD= " + cbo.currentText() + nl } func pBox2 m, n
Table2 {
item = new qtablewidgetitem(cbo.currentText()) setitem(m-1, n-1, item)
see "func pBox2: " see " XYZW= " + cbo.currentText() + nl } ######################################
Marino Liranzo
new point { test() }
class point x=10 y=20 func test see x + nl + y + nl # works fine myobj = new otherclass { see name + nl see x + nl + y + nl # error ! }
class otherclass name = "test"
10 20 test
Line 8 Error (R24) : Using uninitialized variable : x In method test() in file methodbraceerror.ring called from line 5 in file methodbraceerror.ring
new point { test() }
class point x=10 y=20 func test see x + nl + y + nl myobj = new otherclass see myobj.name see x + nl + y + nl
class otherclass name = "test"
10 20 test 10 20
new point { test() }
class point x=10 y=20 func test oSelf = self see x + nl + y + nl myobj = new otherclass { see name + nl see oself.x + nl + oself.y + nl }
class otherclass name = "test"
oself = self
Load "guilib.ring"
New qapp { $ObjectName = "oFirstWindow" oFirstWindow = new FirstWindow
$ObjectName = "oSecondWindow" oSecondWindow = new SecondWindow exec()}
class firstwindow
win1 = new qMainWindow() { ###------------------------------------------------------ setGeometry(200,200,800,500) setwindowtitle("qMainWindow -- Win 1 Table 1 ABCD") Table1 = new qTableWidget(win1) { setrowcount(6) setcolumncount(8) setGeometry(20,20,700,400) setselectionbehavior(QAbstractItemView_SelectRows) setSelectionMode(QAbstractItemView_SelectItems) SetColumnWidth(0,60) # SetColumnWidth(1,100) # SetColumnWidth(2,75) #
mycols = new qstringlist() { append("SYMBOL") append("NAME") append("GROUP") } setHorizontalHeaderLabels(mycols) setAlternatingRowColors(true) setStyleSheet("QHeaderView::section { background-color: yellow }") horizontalHeader().setStyleSheet("color: blue") verticalHeader().setStyleSheet("color: red") cBox1List =[" ", "A", "B", "C", "D"]
cBox1A = new qCombobox(Table1) { for i in cBox1List addItem(i,0) next setcurrentIndexChangedEvent($ObjectName+".pBox1A()") } cBox1B = new qCombobox(Table1) { for i in cBox1List addItem(i,0) next setcurrentIndexChangedEvent($ObjectName+".pBox1B()") } cBox1C = new qCombobox(Table1) { for i in cBox1List addItem(i,0) next setcurrentIndexChangedEvent($ObjectName+".pBox1C()") }
setCellWidget(0, 0, cBox1A) setCellWidget(0, 1, cBox1B) setCellWidget(0, 2, cBox1C)
###--------------------------- ### Add some Table Widget Items setItem(1,0, new qTableWidgetItem("ATT") ) setItem(2,1, new qTableWidgetItem("BAC") ) setItem(3,2, new qTableWidgetItem("CVX") )
###--------------------- ### TABLE 2 Widget
#$ObjectName = $ObjectName + ".oSecondWindow" # oFirstWindow.oSecondWindow #oSecondWindow = new DisplayWidgetTable }
###------------------------------------------- show() }
###-----------------------
###------------------------------------ ### TABLE Methods func pBox1A See "func pBox-1A: " + cBox1A.currentText() +" Index: "+ cBox1A.currentIndex() +nl return func pBox1B See "func pBox-1B: " + cBox1B.currentText() +" Index: "+ cBox1B.currentIndex() +nl return func pBox1C See "func pBox-1C: " + cBox1C.currentText() +" Index: "+ cBox1C.currentIndex() +nl return ###----------------------------------------
###-----------------------------------------------### Widget TABLE 2
Class SecondWindow
win2 = new qwidget() { setGeometry(30,40,700,400) setwindowtitle("Display qwidget - Win2 Table2 XYZW") Table2 = new qTableWidget(win2) {
setrowcount(8) setcolumncount(6) setGeometry(20,20,800,600)
setselectionbehavior(QAbstractItemView_SelectRows) setSelectionMode(QAbstractItemView_SelectItems) SetColumnWidth(0,60) # SetColumnWidth(1,100) # SetColumnWidth(2,75) #
mycols = new qstringlist() { append("ABLE") append("BAKER") append("CHARLIE") } setHorizontalHeaderLabels(mycols) setAlternatingRowColors(true) setStyleSheet("QHeaderView::section { background-color: aqua }") horizontalHeader().setStyleSheet("color: blue") verticalHeader().setStyleSheet("color: red") cBox2List =[" ", "X", "Y", "Z", "W"]
cBox2X = new qCombobox(Table2) { for i in cBox2List addItem(i,0) next setcurrentIndexChangedEvent($ObjectName+".pBox2X()") } cBox2Y = new qCombobox(Table2) { for i in cBox2List addItem(i,0) next setcurrentIndexChangedEvent($ObjectName+".pBox2Y()") } cBox2Z = new qCombobox(Table2) { for i in cBox2List addItem(i,0) next setcurrentIndexChangedEvent($ObjectName+".pBox2Z()") }
setCellWidget(0, 0, cBox2X) setCellWidget(0, 1, cBox2Y) setCellWidget(0, 2, cBox2Z)
###--------------------------- ### Fill in Widget Table companyList = [] aList = [ [ "SPY", "SP500", "Index", 0, 109.24, 107.21 ], [ "SDYL", "SPDivs", "ETF", 1, 152.33, 119.85 ], [ "FB", "Facebook", "Tech", 2, 143.34, 114.02 ], [ "AMZN", "Amazon", "Cloud", 3, 154.80, 117.39 ], [ "NVDA", "Nvidia", "Chips", 4, 287.49, 141.35 ], [ "GOOGL", "Google", "Cloud", 5, 126.70, 107.83 ] ]
for x = 1 to 6 Add(companyList, new Company { Symbolz=aList[x][1] Namez=aList[x][2] Groupz=aList[x][3] Positionz=aList[x][4] Changez=aList[x][5] Ratioz=aList[x][6] } ) next
###------------------------------ ### Put data in Widget Cells for x = 1 to len(companyList) item1 = new qtablewidgetitem(companyList[x].Symbolz) item2 = new qtablewidgetitem(companyList[x].Namez) item3 = new qtablewidgetitem(companyList[x].Groupz) item4 = new qtablewidgetitem("" + companyList[x].Positionz) item5 = new qtablewidgetitem("" + companyList[x].Changez) item6 = new qtablewidgetitem("" + companyList[x].Ratioz) setitem(x, 0, item1) setitem(x, 1, item2) setitem(x, 2, item3) setitem(x, 3, item4) setitem(x, 4, item5) setitem(x, 5, item6) next setItem(1,3, new qTableWidgetItem("Item13") ) setItem(3,1, new qTableWidgetItem("Item31") ) } ###----------------------- show() } ###-----------------------
###------------------------------------ ### TABLE 2 Methods func pBox2X See "func pBox-2X: " + cBox2X.currentText() +" Index: "+ cBox2X.currentIndex() +nl return func pBox2Y See "func pBox-2Y: " + cBox2Y.currentText() +" Index: "+ cBox2Y.currentIndex() +nl return func pBox2Z See "func pBox-2Z: " + cBox2Z.currentText() +" Index: "+ cBox2Z.currentIndex() +nl Table2.item(5,3).setText("Changed03") See " Item-R4-C1: " + Table2.item(4,1).text() +nl See " Item-R5-C2: " + Table2.item(5,2).text() +nl return
Class Company symbolz namez groupz positionz changez ratioz ######################################
cbox1 =NULL win2 = Null
hbox = Null
abox = Null
line2 = Null
line3 = Null
wTot=Null
pTotal=Null
Class NuevoDatos
pesoL pesoF pesoE pesoM
win2 cbox1 hbox abox line1 line2 line3 line4 line5 line6 Elos Efno Enc Emo
wLos wFin wEnc wMo PesoL PesoF PesoE PesoM muroD wVar wTot
Func pDatos
win2 = new qwidget() {
setWindowTitle("Datos Generales")
setWinIcon(self, "imagenes/loguito.png")
move(200,150)
resize(500,350)
fr1 = new qFrame(win2,2) {
move(10,10)
resize(480,45)
setFrameStyle (QFrame_Sunken| QFrame_StyledPanel)
}
fr2 = new qFrame(win2,2) {
move(10,65)
resize(250,245)
setFrameStyle (QFrame_Plain| QFrame_StyledPanel)
}
cbox1 = new qCombobox(fr2) {
win2 = new qwidget() {
new Company { Symbolz=aList[x][1]
func main name = "nice" o1 = new person {name="mahmoud" address="Egypt" phone = 000 } see o1
class person name address phone
func main name = "nice" o1 = new person {self.name="mahmoud" address="Egypt" phone = 000 } see o1
class person name address phone
for x = 1 to 6
companyList + new Company
companyList[len(companyList)] {
companyList[len(companyList)].Symbolz = aList[x][1]
Namez = aList[x][2]
Groupz = aList[x][3]
Positionz = aList[x][4]
Changez = aList[x][5]
Ratioz = aList[x][6]
}
next
self.Namez = aList[x][2] self.Groupz = aList[x][3] self.Positionz = aList[x][4] self.Changez = aList[x][5] self.Ratioz = aList[x][6]