def table_head(): table_clear() lab=window.listWidget.currentItem().text() basa=BasaSort() input_data=basa.input_data(lab) window.inputtable.setColumnCount(len(input_data)) window.inputtable.setHorizontalHeaderLabels(input_data) pict=basa.pict(lab) try: window.picture.setPixmap(QtGui.QPixmap(pict)) except(): window.messege.clear() window.messege.insert(u"Ошибка исходных данных") for i in range(0, window.inputtable.columnCount()): window.inputtable.setItem(0, i, QtGui.QTableWidgetItem(""))
def toword(): # try: basa=BasaSort() lab=window.listWidget.currentItem().text() wordapp = win32com.client.Dispatch("Word.Application") wordapp.Visible = 1 worddoc = wordapp.Documents.Add() worddoc.PageSetup.Orientation = 1 worddoc.PageSetup.BookFoldPrinting = 1 worddoc.ActiveWindow.Selection.Font.Size = 12 worddoc.ActiveWindow.Selection.Font.Name="Times New Roman" worddoc.ActiveWindow.Selection.BoldRun() worddoc.ActiveWindow.Selection.TypeText(u"Расчет сечения") worddoc.ActiveWindow.Selection.TypeParagraph() worddoc.ActiveWindow.Selection.BoldRun() worddoc.ActiveWindow.Selection.TypeText(u"Сечение: "+unicode(lab)) worddoc.ActiveWindow.Selection.TypeParagraph() temp=os.environ['TEMP'] path=basa.pict(lab) shutil.copy2(path,temp) dir_pict=str(temp+'\\'+basa.pict(lab)[17:]) worddoc.ActiveWindow.Selection.InlineShapes.AddPicture(dir_pict) os.remove(dir_pict) # for i in sys.path: # if 'SortamentPicture' in os.listdir(i): # home=i # break # dir_pict=str(home+'\\'+basa.pict(lab)) # worddoc.ActiveWindow.Selection.InlineShapes.AddPicture(dir_pict) worddoc.ActiveWindow.Selection.TypeParagraph() worddoc.ActiveWindow.Selection.TypeText(u"Исходные характеристики:") worddoc.ActiveWindow.Selection.TypeParagraph() location = worddoc.ActiveWindow.Selection.Range table = location.Tables.Add (location, 2, len(basa.input_data(lab))) table.ApplyStyleHeadingRows = 1 table.AutoFormat(16) x=1 for i in basa.input_data(lab): table.Cell(1,x).Range.InsertAfter(i) table.Cell(2,x).Range.InsertAfter(window.inputtable.item(0, x-1).text()) x=x+1 worddoc.ActiveWindow.Selection.MoveDown() worddoc.ActiveWindow.Selection.MoveDown() worddoc.ActiveWindow.Selection.TypeParagraph() worddoc.ActiveWindow.Selection.TypeText(u"Расчетные характеристики:") worddoc.ActiveWindow.Selection.TypeParagraph() worddoc.ActiveWindow.Selection.Font.Size = 10 location2 = worddoc.ActiveWindow.Selection.Range output_table=window.outputtable lenght_table=output_table.columnCount() count_table=(lenght_table-0.5)//7+1 table = location2.Tables.Add (location2, 2*count_table, 7) table.ApplyStyleHeadingRows = 1 table.AutoFormat(16) for i in range(lenght_table): j=(i)//7+1 z=(i+1)-(j-1)*7 # print j, z table.Cell((j-1)*2+1,z).Range.InsertAfter(unicode(output_table.horizontalHeaderItem(i).text())) table.Cell((j-1)*2+2,z).Range.InsertAfter(unicode(output_table.item(0, i).text())) del wordapp