0
ここにスーパーnoobがあります。私は最初のPythonプログラムを完成させました。小さなデータベース用の簡単な検索エンジンです。今私はKivyとアンドロイドAPPとして移植しようとしています。私が今したいのは、元のソフトウェアでうまく機能する関数から、私のsqliteデータベース全体(20行程度)の内容を表示するだけです。KivyでSQLite Pythonを取得する
アンドロイドアプリでは、関数 '関数'は、 '印刷されたテキスト'は表示されますが、データベース自体の要素は表示されないため、機能しているようです。基本的には、 "MVA:"しか印刷されません。私は解決策を見つけるためにしばらく試していたが、私は固執した:/
あなたの助けをいただきありがとうございます。
#This is my main.py file
from kivy.app import App
import sqlite3 as lite
import sys
from kivy.uix.label import Label
from kivy.uix.textinput import TextInput
from kivy.uix.anchorlayout import AnchorLayout
from kivy.core.window import Window
from kivy.uix.button import Button
from kivy.uix.boxlayout import BoxLayout
import time
Window.clearcolor = (1, 1, 1, 1)
class SearchWidget(BoxLayout):
def list_table(self, *args):
try:
con = lite.connect('data.db')
con.text_factory = str
cur = con.cursor()
cur.execute("SELECT * FROM mva ORDER BY mva ASC")
con.commit()
ar = cur.fetchall()
for item in ar:
data = 'MVA ' + str(item[1]) + str(item[2]) + ': ' + str(item[0]) + ' ' + str(item[3])
return data
except lite.Error, e:
if con:
con.rollback()
print "Error %s:" % e.args[0]
sys.exit(1)
finally:
if con:
con.close()
class MyApp(App):
def build(self):
return SearchWidget()
if __name__ == '__main__':
MyApp().run()
そして、これが私のmy.kvファイル
<SearchWidget>:
orientation: 'vertical'
TextInput:
id: my_textinput
font_size: 25
size_hint_y: None
height: 100
text: 'MVA Search'
BoxLayout:
Label:
color: (0, 0, 0, 1)
size: self.texture_size
text: root.list_table()
font_size: 25
あなたのソリューションは、動作します。ご協力ありがとうございました。 – Atoms