基本上我想要做的是显示16个项目到屏幕,额外的项目添加到新页面。
每页显示16个项目,16个额外的项目与其他屏幕分开。
我正在使用2D数组来显示/显示到屏幕
spritebatch.draw(item.texture dose not exit)
在此代码public void Draw(SpriteBatch spriteBatch)
{
var result = items.Cast<double>().Skip(ItemsPerpage * CurrentPage).Skip(ItemsPerpage);
foreach (var item in result)
{
for (int X = 0; X < Columns; X++)
{
for (int Y = 0; Y < Rows; Y++)
{
int DrawX = (int)pos.X + (X * (slotWight + 2));
int DrawY = (int)pos.Y + (Y * (slotWight + 2));
if(items[X,Y] != null)
{
spriteBatch.Draw(item.Texure, new Rectangle(DrawX, DrawY ,32, 32), new Rectangle(0, 0, 64, 64), Color.White);
}
}
}
}
}
中,如果我用结果替换每个循环项。
示例
from openerp.addons.website.models.website import slug
# some code here
@http.route('/crmlead/create', type='http', auth="user", website=True)
def create_crm_lead(self, **kwargs):
crm_lead = request.env['crm.lead'].sudo().create({
# arguments
})
return request.redirect("/crmlead/detail/%s" % slug(crm_lead))
@http.route('/crmlead/detail/<model("crm.lead"):lead>', type='http', auth="public", website=True)
def show_details_crm_lead(self, lead, **kwargs):
import pdb; pdb.set_trace()
pass
这里显示列表中的所有项目。 如图所示
答案 0 :(得分:2)
var result = items.Cast<double>().Skip(ItemsPerpage * (CurrentPage-1)).Таке(ItemsPerpage);
您没有使用Take
的第一个问题。您跳过的第二个问题应该是itemsPerPage * (CurrentPage-1)
,因为如果您在第一页上,则不应跳过任何记录,因此:(1-1)*ItemsPAerPage
= 0。