import tkinter
window = tkinter.Tk()
window.geometry('500x700')
window.config(bg='#191B28')
def btn(txt,back='#1E2336',front='white',actbg="#141825",actfg="#C2BFBF"):
return tkinter.Button(
text=txt,
bg=back,
fg=front,
font=('Arial',20),
border=0,
activebackground=actbg,
activeforeground=actfg
)
result_entry = tkinter.Entry(font=('Arial',35),border=1,bg='#191B28',fg='white')
result_entry.place(x=10,y=5,width=480,height=100)
second_entry = tkinter.Entry(font=('Arial',25),border=1,bg='#191B28',fg='white')
second_entry.place(x=10,y=115,width=480,height=70)
second_entry.focus()
ce_btn = tkinter.Button(
text='CE',
fg='white',
bg='#52C9DD',
font=('Arial',20),
border=0,
activebackground="#3E9AAA",activeforeground="#C3C2C2"
)
ce_btn.place(x=10,y=200,width=80,height=80)
delete_btn = tkinter.Button(
text='<-',
fg='white',
bg='#52C9DD',
font=('Arial',20),
border=0,
activebackground="#3E9AAA",activeforeground="#C3C2C2"
)
delete_btn.place(x=100,y=200,width=80,height=80)
stepen_btn = btn(txt='**',back='#52C9DD',actbg='#3E9AAA')
stepen_btn.place(x=190,y=200,width=80,height=80)
boliw_btn = btn(txt='/',back='#52C9DD',actbg='#3E9AAA')
boliw_btn.place(x=280,y=200,width=80,height=80)
jeti_btn = btn(txt='7')
jeti_btn.place(x=10,y=290,height=80,width=80)
segiz_btn = btn(txt='8')
segiz_btn.place(x=100, y=290, width=80, height=80)
togiz_btn = btn(txt='9')
togiz_btn.place(x=190, y=290, width=80, height=80)
tort_btn = btn(txt='4')
tort_btn.place(x=10, y=380, width=80, height=80)
bes_btn = btn(txt='5')
bes_btn.place(x=100, y=380, width=80, height=80)
window.mainloop()
window = tkinter.Tk()
window.geometry('500x700')
window.config(bg='#191B28')
def btn(txt,back='#1E2336',front='white',actbg="#141825",actfg="#C2BFBF"):
return tkinter.Button(
text=txt,
bg=back,
fg=front,
font=('Arial',20),
border=0,
activebackground=actbg,
activeforeground=actfg
)
result_entry = tkinter.Entry(font=('Arial',35),border=1,bg='#191B28',fg='white')
result_entry.place(x=10,y=5,width=480,height=100)
second_entry = tkinter.Entry(font=('Arial',25),border=1,bg='#191B28',fg='white')
second_entry.place(x=10,y=115,width=480,height=70)
second_entry.focus()
ce_btn = tkinter.Button(
text='CE',
fg='white',
bg='#52C9DD',
font=('Arial',20),
border=0,
activebackground="#3E9AAA",activeforeground="#C3C2C2"
)
ce_btn.place(x=10,y=200,width=80,height=80)
delete_btn = tkinter.Button(
text='<-',
fg='white',
bg='#52C9DD',
font=('Arial',20),
border=0,
activebackground="#3E9AAA",activeforeground="#C3C2C2"
)
delete_btn.place(x=100,y=200,width=80,height=80)
stepen_btn = btn(txt='**',back='#52C9DD',actbg='#3E9AAA')
stepen_btn.place(x=190,y=200,width=80,height=80)
boliw_btn = btn(txt='/',back='#52C9DD',actbg='#3E9AAA')
boliw_btn.place(x=280,y=200,width=80,height=80)
jeti_btn = btn(txt='7')
jeti_btn.place(x=10,y=290,height=80,width=80)
segiz_btn = btn(txt='8')
segiz_btn.place(x=100, y=290, width=80, height=80)
togiz_btn = btn(txt='9')
togiz_btn.place(x=190, y=290, width=80, height=80)
tort_btn = btn(txt='4')
tort_btn.place(x=10, y=380, width=80, height=80)
bes_btn = btn(txt='5')
bes_btn.place(x=100, y=380, width=80, height=80)
window.mainloop()
Menu File
menu_bar = tkinter.Menu(window)
def red():
window.config(bg='red')
def green():
window.config(bg='green')
def yellow():
window.config(bg='yellow')
file_menu = tkinter.Menu(menu_bar, tearoff=0)
file_menu.add_command(label='Qizil fon',command=red )
file_menu.add_separator()
file_menu.add_command(label='Jasil fon', command=green)
file_menu.add_separator()
file_menu.add_command(label='Sari fon', command=yellow )
vistavka_menu = tkinter.Menu(menu_bar, tearoff=0)
vistavka_menu.add_command(label='Saliw')
vistavka_menu.add_separator()
vistavka_menu.add_command(label='Qatardi kesib aliw')
vistavka_menu.add_separator()
vistavka_menu.add_command(label='Qatardi koshiriw')
menu_bar.add_cascade(label='Fayl', menu=file_menu)
menu_bar.add_cascade(label='Vistavka', menu=vistavka_menu)
window.config(menu=menu_bar)
from aiogram import types,Bot,Dispatcher,executor
from telefonbutton import *
from telefoninlinebutton import *
api='7292039269:AAFwH58Bgs2_85CgjM1MOnY5KjxHeqFc484'
bot=Bot(api)
dp=Dispatcher(bot)
@dp.message_handler(commands=['start'])
async def send_hi(sms:types.Message):
await sms.answer(text='Ассалому алейкум',reply_markup=knopkiler_menu)
# telefonlar
@dp.message_handler(text='telefonlar')
async def sen_tel(sms:types.Message):
await sms.answer(text='telfonlardin madeleri',reply_markup=telefon1_menu)
# zakaz beriw ge
@dp.message_handler(text='zakaz')
async def send_admin(sms:types.Message):
await sms.answer(text='oplata bolimine otin')
# lakatciya aliw adamnan
@dp.message_handler(content_types=types.ContentType.LOCATION)
async def get_location(message: types.Message):
lat = message.location.latitude
lon = message.location.longitude
await message.answer(
f"📍 Lokatsiya olindi:\n"
f"Latitude: {lat}\nLongitude: {lon}"
,reply_markup=knopkiler_menu)
# iphone knopka
@dp.message_handler(text='apple')
async def send_photo(sms:types.Message):
siwret=open(file='image/apple/apple_logotip.webp',mode='rb')
await sms.answer_photo(photo=siwret,reply_markup=iphone_menu)
# samsung knopka
@dp.message_handler(text='samsung')
async def send_sam(sms: types.Message):
with open('image/samsung/image.png','rb') as photo:
await sms.answer_photo(photo=photo, reply_markup=samsung_menu)
# redmi knopka
@dp.message_handler(text='redmi')
async def send_redmi(sms: types.Message):
with open('image/redmi/redmi_lgogtip.webp','rb') as photo:
await sms.answer_photo(photo=photo, reply_markup=redmi_menu)
# inline knopka
@dp.callback_query_handler()
async def send_call(call: types.CallbackQuery):
data = call.data
# 17
if data == 'iphone_17':
with open('image/apple/iphone_17.webp','rb') as photo, \
open('documents/apple_din_doc/Apple_iphone_17_8GB_256GB.txt','rb') as doc:
await call.message.answer_photo(photo, caption='iPhone 17')
await call.message.answer_document(doc)
# 17 pro
elif data == 'iphone_17_pro':
with open('image/apple/iphone_17_pro.webp','rb') as photo, \
open('documents/apple_din_doc/Apple_iphone_17_Pro_8GB_256GB.txt','rb') as doc:
await call.message.answer_photo(photo, caption='iPhone 17 Pro')
await call.message.answer_document(doc)
# 17 pro max
elif data == 'iphone_17_pro_max':
with open('image/apple/iphone_17_pro_max.webp','rb') as photo, \
open('documents/apple_din_doc/Apple_iphone_17_Pro_Max_8GB_256GB.txt','rb') as doc:
await call.message.answer_photo(photo, caption='iPhone 17 Pro Max')
await call.message.answer_document(doc)
# redmi
elif data == 'redmi_10':
with open('image/redmi/redmi10.webp','rb') as photo, \
open('documents/redmidin/Redmi_10.txt','rb') as doc:
await call.message.answer_photo(photo, caption='📱 Redmi 10')
await call.message.answer_document(doc)
# redmi 11
elif data == 'redmi_11':
with open('image/redmi/redmi11.webp','rb') as photo, \
open('documents/redmidin/Redmi_11.txt','rb') as doc:
await call.message.answer_photo(photo, caption='📱 Redmi 11')
await call.message.answer_document(doc)
# redmi 12
elif data == 'redmi_12':
with open('image/redmi/redmi12.webp','rb') as photo, \
open('documents/redmidin/Redmi_12.txt','rb') as doc:
await call.message.answer_photo(photo, caption='📱 Redmi 12')
await call.message.answer_document(doc)
# A 15
elif data == 'a15':
with open('image/samsung/samsungA15.webp','rb') as photo, \
open('documents/samsung_doc/samsung_a15.txt','rb') as doc:
await call.message.answer_photo(photo,caption='bul A 15 modeli')
await call.message.answer_document(doc)
# A 16
elif data == 'a16':
with open('image/samsung/samsungA16.webp','rb') as photo, \
open('documents/samsung_doc/samsung_a16.txt','rb') as doc:
await call.message.answer_photo(photo,caption='bul A 16 modeli')
await call.message.answer_document(doc)
# A17
elif data == 'a17':
with open('image/samsung/samsungA17.webp','rb') as photo, \
open('documents/samsung_doc/samsung_a17.txt','rb') as doc:
await call.message.answer_photo(photo,caption='bul A 17 modeli')
await call.message.answer_document(doc)
# inlline buttonda artqa qaytatin knopka
elif data == 'artqa':
await call.message.answer("🔙 Orqaga", reply_markup=knopkiler_menu)
await call.answer()
# artqa qaytariwshi knopka
@dp.message_handler(text='назад')
async def send_artqa(sms:types.Message):
await sms.answer(text='artqa',reply_markup=knopkiler_menu)
if __name__=='__main__':
executor.start_polling(dp,skip_updates=True)
from aiogram.types import InlineKeyboardButton,InlineKeyboardMarkup
# apple
nazad=InlineKeyboardButton(text='⏪',callback_data='artqa')
apple1=InlineKeyboardButton(text='Iphone_17',callback_data='iphone_17')
apple2=InlineKeyboardButton(text='Iphone_17_pro',callback_data='iphone_17_pro')
apple3=InlineKeyboardButton(text='Iphone_17_pro_max',callback_data='iphone_17_pro_max')
iphone_menu=InlineKeyboardMarkup().add(apple1,apple2,apple3,nazad)
# samsung
samsung1=InlineKeyboardButton(text='A15',callback_data='a15')
samsung2=InlineKeyboardButton(text='A16',callback_data='a16')
samsung3=InlineKeyboardButton(text='A17',callback_data='a17')
samsung_menu=InlineKeyboardMarkup().add(samsung1,samsung2,samsung3,nazad)
# redmi
redmi1=InlineKeyboardButton(text='Redmi 10',callback_data='redmi_10')
redmi2=InlineKeyboardButton(text='Redmi 11',callback_data='redmi_11')
redmi3=InlineKeyboardButton(text='Redmi 12d',callback_data='redmi_12')
redmi_menu=InlineKeyboardMarkup().add(redmi1,redmi2,redmi3,nazad)
from aiogram.types import ReplyKeyboardMarkup,KeyboardButton
location=KeyboardButton(text='lokatciya',request_location=True)
telefon=KeyboardButton(text='telefonlar')
zakaz=KeyboardButton(text='zakaz')
knopkiler_menu=ReplyKeyboardMarkup(resize_keyboard=True).add(telefon,zakaz,location)
artqa=KeyboardButton(text='назад')
apple=KeyboardButton(text='apple')
samsung=KeyboardButton(text='samsung')
redmi=KeyboardButton(text='redmi')
telefon1_menu=ReplyKeyboardMarkup(resize_keyboard=True).add(apple,samsung,redmi,artqa)
from aiogram import types,Bot,Dispatcher,executor
from aiogram.contrib.fsm_storage.memory import MemoryStorage
from aiogram.dispatcher.filters.state import State, StatesGroup
from aiogram.dispatcher import FSMContext
from button import admin_menu
from sqlite import add_to_db
ADMIN_ID=6456829950
api='7292039269:AAFwH58Bgs2_85CgjM1MOnY5KjxHeqFc484'
bot=Bot(api)
storage = MemoryStorage()
dp=Dispatcher(bot, storage=storage)
class Register(StatesGroup):
name = State()
phone = State()
adress = State()
# start
@dp.message_handler(commands=['start'])
async def start_handler(message: types.Message):
await message.answer('Atindi jaz')
await Register.name.set()
# phone
@dp.message_handler(state=Register.name)
async def get_name(message:types.Message,state:FSMContext):
await state.update_data(name=message.text)
await message.answer('telefon nomerindi jaz:')
await Register.phone.set()
# adress
@dp.message_handler(state=Register.phone)
async def get_phone(message:types.Message,state:FSMContext):
await state.update_data(phone=message.text)
await message.answer('adrsendi jaz:')
await Register.adress.set()
# aqiri
@dp.message_handler(state=Register.adress)
async def get_adress(message: types.Message, state: FSMContext):
await state.update_data(adress=message.text)
data = await state.get_data()
name=data.get('name')
phone=data.get('phone')
adress=data.get('adress')
add_to_db(name,phone,adress)
await message.answer(
f"Malumotlar saqlandi:\n"
f"Ati: {name}\n"
f"Telefon: {phone}\n"
f"Adress: {adress}\n"
)
await message.answer("✅ Mlumotlar saqlandi")
await state.finish()
@dp.message_handler(commands=['admin'])
async def admin_cmd(message: types.Message):
if message.from_user.id !=ADMIN_ID:
await message.answer('siz admin emesiz')
return
await message.answer('admin panel', reply_markup=admin_menu)
@dp.message_handler(lambda m: m.text == 'Users')
async def show_users(message: types.Message):
if message.from_user.id !=ADMIN_ID:
return
await message.answer('Hazirshe users korsetiw jalganbadi')
@dp.message_handler(lambda m: m.text=='Close')
async def close_admin(message: types.Message):
if message.from_user.id !=ADMIN_ID:
await message.answer('Admin panel yopildi',reply_markup=types.ReplyKeyboardRemove())
if __name__ == '__main__':
executor.start_polling(dp, skip_updates=True)
from aiogram.types import ReplyKeyboardMarkup,KeyboardButton
admin_menu = ReplyKeyboardMarkup(
keyboard=[
[KeyboardButton("Users")],
[KeyboardButton("Statiska")],
[KeyboardButton("Close")]
],
resize_keyboard=True
)
import sqlite3
conn=sqlite3.connect('telegrambot.db')
cursor=conn.cursor()
def add_to_db(name, phone, adress):
conn = sqlite3.connect("telegrambot.db")
cur = conn.cursor()
cur.execute("""
CREATE TABLE IF NOT EXISTS telegrambot (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT,
phone TEXT,
adress TEXT
)
""")
cur.execute("""
INSERT OR IGNORE INTO telegrambot (name, phone, adress)
VALUES (?, ?, ? )
""", (name, phone, adress))
conn.commit()
conn.close()