100% tevredenheidsgarantie Direct beschikbaar na je betaling Lees online óf als PDF Geen vaste maandelijkse kosten
logo-home
INF2611 Revision €2,62
In winkelwagen

Tentamen (uitwerkingen)

INF2611 Revision

1 beoordeling
 8 keer verkocht
  • Vak
  • Instelling

INF2611 Revision. Detailed work, solutions, memos, notes, and explanations

Voorbeeld 4 van de 33  pagina's

  • 21 oktober 2023
  • 33
  • 2023/2024
  • Tentamen (uitwerkingen)
  • Vragen en antwoorden

1  beoordeling

review-writer-avatar

Door: ndinannyijusticemukwevho1 • 10 maanden geleden

avatar-seller
INF2611 Revision.

, Chapter Summaries Module: INF2611



Chapter 9 – Advanced Widgets

9.1. Displaying System Clock Time in LCD Format




 To display LCD‐like digits, you use the LCD Number widget, an instance of the QLCDNumber class.
 To perform a repetitive task, you use a timer. A timer is an instance of the QTimer class.
 To use, create an instance of QTimer and connect its timeout() signal to the slot that performs the
desired task.
 To fetch the system clock time and measure a span of elapsed time, you use the QTime class. The
returned info can be converted into text with the toString() method.


CLASS METHODS USE
QLCDNumber setMode() Change the base of the numbers (Hex, Dec, Oct, Bin).
display() Display the specified content as LCD digits.
value() Return the value displayed by the widget.
QTimer timeout()
start(n) Generate a timeout() at n millisecond intervals.
setSingleShot(true) Generate a timeout() signal only once.
singleShot(n) Generate a timeout() signal only once after n milliseconds.
QTime currentTime() Fetches the system’s clock time as a QTime object.
hour(), minute(), Return the number of hours, minutes, seconds or millisecs.
seconds(), msecs()
addSecs(), addMSecs() Return time after adding specified number of seconds/msecs.
secsTo(), msecsTo() Return the number between two times.

In the following example, an instance of QTimer is created with the name timer, and it’s timeout() signal is
connected to showlcd(), a function that is invoked every 1000 milliseconds.


import sys
from disptime import *

class MyForm(QtGui.QDialog):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_Dialog()
self.ui.setupUi(self)

timer = QtCore.QTimer(self)
timer.timeout.connect(self.showlcd)
timer.start(1000)


_______________________________________________________________________________________
Page 1 of 32

, Chapter Summaries Module: INF2611

self.showlcd()

def showlcd(self):
time = QtCore.QTime.currentTime()
text = time.toString('hh:mm')
self.ui.lcdNumber.display(text)

if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
myapp = MyForm()
myapp.show()
sys.exit(app.exec_())



 Conversion of ui file to py file: > pyuic4 filename.ui -o filename.py



9.2. Working With Calendar and Displaying Dates in Different Formats




 To display a monthly calendar, you use the Calendar widget, which is an instance of the
QCalendarWidget class. By default, current month and year are shown with days in abbreviated form
(Sun, Mon, Tue etc.). Weekends are marked in red and the first column day is Sunday.
 The date that is selected is returned as a QDate object. It reads the current date from the system clock.
 For displaying and editing dates, use the Date Edit widget, which is an instance of the QDateEdit class.


WIDGET PROPERTIES DESCRIPTION
Calendar minimumDate, maximumDate Used to specify the min/max date range.
selectionMode Set to NoSelection to prohibit user selection.
verticalHeaderFormat Set to NoVerticalHeader to remove week numbers.
gridVisible Set to True to turn on Calendar grid.
HorizontalHeaderFormat SingleLetterDayNames, ShortDatNames,
LongDayNames

Date Edit minimumDate, maximumDate


CLASS METHODS USE
QCalendarWidget selectedDate() Returns currently selected date, month, year.
monthShown()
yearShown()

_______________________________________________________________________________________
Page 2 of 32

, Chapter Summaries Module: INF2611

setFirstDayOfWeek() Set the day in the first column.
selectionChanged() Emits when the user selects another date.
QDateEdit setDate()
setDisplayFormat() Options: dd.MM.yyyy, MMM.d.yy, MMM.d.yyyy,
MMMM.d.yy

QDate currentDate() Returns system date as QDate object.
setDate() Sets a date by specifying year, month, day.
year(), month(), day() Returns the year, month or day from the date object.
dayOfWeek() Returns the day of the week from the date object.
addDays(), addMonths(), Adds the specified number and returns new date.
addYears()
daysTo() Return the number of days between two dates.
daysInMonth(),
daysInYear()
isLeapYear() Returns true or false.
toPyDate() Returns date as a string. Accepts a format parameter, for
example: dd.MM.yyyy
Options are d (1‐31), dd (01‐31), ddd (Mon, Tue, etc.),
dddd (Monday, Tuesday, etc.), M (1‐12), MM (01‐12), MMM
(Jan, Feb, etc.), MMMM (January, February, etc.), yy (00‐99),
yyyy (1999, etc.).


In the example, the selectionChanged() signal of the Calendar widget is connected to dispdate(), a function
which retrieves the user selected date through the selectedDate() method, and displays it in the Date Edit
widget through setDate(). Optional: set the date format using setDisplayFormat().


import sys
from dispcalendar import *

class MyForm(QtGui.QDialog):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.ui = Ui_Dialog()
self.ui.setupUi(self)

QtCore.QObject.connect(self.ui.calendarWidget,
QtCore.SIGNAL('selectionChanged()'), self.dispdate)

def dispdate(self):
self.ui.dateEdit.setDisplayFormat('MMM d yyyy')
self.ui.dateEdit.setDate(self.ui.calendarWidget.selectedDate())

if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
myapp = MyForm()
myapp.show()
sys.exit(app.exec_())



_______________________________________________________________________________________
Page 3 of 32

Dit zijn jouw voordelen als je samenvattingen koopt bij Stuvia:

Bewezen kwaliteit door reviews

Bewezen kwaliteit door reviews

Studenten hebben al meer dan 850.000 samenvattingen beoordeeld. Zo weet jij zeker dat je de beste keuze maakt!

In een paar klikken geregeld

In een paar klikken geregeld

Geen gedoe — betaal gewoon eenmalig met iDeal, creditcard of je Stuvia-tegoed en je bent klaar. Geen abonnement nodig.

Direct to-the-point

Direct to-the-point

Studenten maken samenvattingen voor studenten. Dat betekent: actuele inhoud waar jij écht wat aan hebt. Geen overbodige details!

Veelgestelde vragen

Wat krijg ik als ik dit document koop?

Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.

Tevredenheidsgarantie: hoe werkt dat?

Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.

Van wie koop ik deze samenvatting?

Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper Excellentstudyresources001. Stuvia faciliteert de betaling aan de verkoper.

Zit ik meteen vast aan een abonnement?

Nee, je koopt alleen deze samenvatting voor €2,62. Je zit daarna nergens aan vast.

Is Stuvia te vertrouwen?

4,6 sterren op Google & Trustpilot (+1000 reviews)

Afgelopen 30 dagen zijn er 68175 samenvattingen verkocht

Opgericht in 2010, al 15 jaar dé plek om samenvattingen te kopen

Begin nu gratis
€2,62  8x  verkocht
  • (1)
In winkelwagen
Toegevoegd