I have three children and two of them are in school full-time. Our six year old daughter is in grade one and our four year old daughter is in junior kindergarten. Every night I pack their lunch for school and I always pack healthy snacks, a sandwich and a drink. Our four year old is really good at eating her lunch at school, but our six year old usually brings her lunch back home and eats it at that time. Sometimes when I ask her why she didn't eat it at school, she tells me because she didn't have time.
Children have a certain amount of time for lunch/snack time and that's usually when they get to socialize with each other and play. They get so distracted that they forget to eat their lunch. Then when they get home from school they're starving. Our girls usually want a snack, but if they're hungry I make them eat the rest of their lunch first. I don't want them to eat too much because they have to eat their dinner.
I thought about packing a smaller lunch, but I always worry that it won't be enough and she'll still be hungry.
In the end, I'm happy as long as she has a good breakfast and eats her healthy snacks at school.